100 дней искусственного интеллекта. День 2. Улучшение оперативного проектирования для ChatGPT

100 дней искусственного интеллекта. День 2. Улучшение оперативного проектирования для ChatGPT

5 января 2024 г.

Я пишу информационный бюллетень под названием «Выше среднего», в котором рассказываю о второстепенных идеях, стоящих за всем, что происходит в больших технологиях. Если вы увлекаетесь технологиями и хотите достичь уровня выше среднего, подпишитесь на нее.

Я не знаю, станет ли оперативное проектирование действительно важной ролью в компаниях в будущем. Но написание более качественных подсказок будет становиться все более важным, если вы хотите повысить продуктивность. Итак, чтобы научиться писать более эффективные подсказки для получения желаемого результата, я прошёл краткий курс на Deeplearning.ai под названием ChatGPT Prompt Engineering. для разработчиков.

Вот несколько выводов, которые помогут вам стать лучшим подсказчиком.

  1. Получение правильного приглашения с желаемым результатом — это итеративный процесс: вы не получите правильное приглашение с первой попытки. Вам нужно начать с базовой подсказки и доработать ее, используя лучшие принципы (о которых я расскажу ниже). Если вы разработчик, создающий приложение, возможно, вам захочется протестировать несколько похожих запросов с большими наборами данных, чтобы оценить, какой запрос подходит для вашего приложения.
  2. Принцип 1. Пишите четкие и конкретные инструкции. Ясность не значит краткость. Это означает использование разделителей (кавычек, обратных кавычек, тире и т. д.) для выделения текста, над которым должно работать приглашение. Это означает запрос на структурированный результат. Прямо попросите LLM проверить, удовлетворены ли указанные вами условия. Или когда-нибудь приводить явные примеры успешного выполнения задачи. В примере ниже вы можете увидеть, как мы использовали разделители.
  3. from openai import OpenAI
    client = OpenAI()
    client.api_key = 'YOUR_SECRET_KEY'
    
    text_1 = f"""
    Making a cup of tea is easy! First, you need to get somewater boiling. While that's happening,
    grab a cup and put a tea bag in it. Once the water is
    hot enough, just pour it over the tea bag.
    Let it sit for a bit so the tea can steep. After a
    few minutes, take out the tea bag. If you
    like, you can add some sugar or milk to taste.
    And that's it! You've got yourself a delicious
    cup of tea to enjoy.
    """
    
    prompt = f"""
    You will be provided with text delimited by triple quotes.
    If it contains a sequence of instructions, 
    re-write those instructions in the following format:
    
    Step 1 - ...
    Step 2 - …
    
    Step N - …
    
    If the text does not contain a sequence of instructions, 
    then simply write "No steps provided."
    
    """{text_1}"""
    
    """
    
    response = client.chat.completions.create(
    model="gpt-4",
    messages=[
    {
    "role": "user",
    "content": prompt
    }
    ],
    temperature=0,
    #max_tokens=64,
    #top_p=1
    )
    
    print(response.choices[0].message.content)
    
    1. Принцип 2. Дайте модели время подумать. Вместо того, чтобы напрямую просить модель достичь конечной цели, которую вы хотите достичь, разбейте цель на несколько задач. Кроме того, явно поручите модели выдавать выходные данные в требуемом формате. Модели склонны галлюцинировать и брать решение из текста, который вы даете, вместо того, чтобы рассчитывать самостоятельно, поэтому явно сообщите модели, чтобы она нашла собственное решение.
    2. Это второй день из 100 дней ИИ.

      Следуйте за мной в Twitter, чтобы быть в курсе последних новостей о 100 днях искусственного интеллекта, или добавьте эту страницу в закладки.


      Также опубликовано здесь.


      Оригинал
PREVIOUS ARTICLE
NEXT ARTICLE