Оперативные стратегии проектирования

Проектирование подсказок — это процесс создания подсказок или запросов на естественном языке, которые вызывают точные и качественные ответы с помощью языковой модели.

На этой странице представлены основные концепции, стратегии и передовые методы, которые помогут вам приступить к разработке подсказок для максимально эффективного использования моделей ИИ Gemini.

Руководства по конкретным темам

Ищете более конкретные стратегии подсказок? Ознакомьтесь с нашими другими руководствами по подсказкам:

Другие примеры подсказок вы найдете в галерее подсказок , предназначенной для интерактивной демонстрации многих концепций, изложенных в этом руководстве.

Четкие и конкретные инструкции

Эффективный способ настройки поведения модели — предоставить ей чёткие и конкретные инструкции. Инструкции могут быть в форме вопросов, пошаговых заданий или даже более сложными, например, описанием пользовательского опыта и образа мышления.

Вход

Входные данные — это обязательный текст в запросе, на который модель должна ответить. Входными данными могут быть вопрос, на который отвечает модель (входные данные вопроса), задача, которую выполняет модель (входные данные задачи), сущность, с которой работает модель (входные данные сущности), или частичные входные данные, которые модель завершает или продолжает (входные данные завершения).

Тип ввода Быстрый Сгенерированный вывод
Вопрос
     What's a good name for a flower shop that specializes in selling bouquets of     dried flowers? Create a list of 5 options with just the names.
     Here are 10 names for a flower shop specializing in dried flowers:      1. Everlasting Blooms     2. Dried & Delightful     3. The Petal Preserve     4. Whispers of Wildflowers     5. Forever Blooms     
Задача
     Give me a simple list of just the things that I must bring on a camping trip. The list should have 5 items.
     1. **Tent:** Your shelter from the elements.     2. **Sleeping Bag:** Stay warm and comfortable.     3. **Sleeping Pad:** Insulation and cushioning for a good night's sleep.     4. **Headlamp or Flashlight:** Light for nighttime activities.     5. **First Aid Kit:** Be prepared for minor injuries.
Сущность
     Classify the following items as [large, small]: Elephant Mouse Snail
 Here's the classification:  * **Elephant:** Large * **Mouse:** Small * **Snail:** Small     

Частичное завершение ввода

Генеративные языковые модели работают как продвинутый инструмент автодополнения. Когда вы предоставляете частичный контент, модель может предоставить оставшуюся часть контента или то, что она считает продолжением этого контента, в качестве ответа. При этом, если вы добавляете какие-либо примеры или контекст, модель может учитывать эти примеры или контекст.

В следующем примере представлена ​​подсказка с инструкцией и вводом сущности:

 For the given order, return a JSON object that has the fields cheeseburger, hamburger, fries, or drink, with the value being the quantity.  Order: A burger and a drink.   
 {   "cheeseburger": 0,   "hamburger": 1,   "fries": 0,   "drink": 1 }   

Хотя модель и выполнила подсказки, написание инструкций на естественном языке иногда может быть сложным и оставляет большую часть на усмотрение модели. Например, меню ресторана может содержать много пунктов. Чтобы сократить размер JSON-ответа, вероятно, стоит исключить пункты, которые не были заказаны. В этом случае можно привести пример и префикс ответа , а модель завершит его:

 Valid fields are cheeseburger, hamburger, fries, and drink. Order: Give me a cheeseburger and fries Output: ``` {   "cheeseburger": 1,   "fries": 1 } ``` Order: I want two burgers, a drink, and fries. Output:   
 ``` {   "hamburger": 2,   "drink": 1,   "fries": 1 } ```   

Обратите внимание, что «чизбургер» был исключен из результатов, поскольку он не был частью заказа.

Ограничения

Укажите любые ограничения на чтение запроса или генерацию ответа. Вы можете указать модели, что делать, а что нет. Например, можно указать в запросе ограничение на длину краткого содержания:

 Summarize this text in one sentence: Text: A quantum computer exploits quantum mechanical phenomena to perform calculations exponentially faster than any modern traditional computer. At very tiny scales, physical matter acts as both particles and as waves, and quantum computing uses specialized hardware to leverage this behavior. The operating principles of quantum devices is beyond the scope of classical physics. When deployed at scale, quantum computers could be used in a wide variety of applications such as: in cybersecurity to break existing encryption methods while helping researchers create new ones, in meteorology to develop better weather forecasting etc. However, the current state of the art quantum computers are still largely experimental and impractical.     

       Exploiting quantum mechanical phenomena, quantum computers can perform calculations exponentially faster than traditional computers for potential applications like cybersecurity and meteorology, although they are currently largely experimental and impractical.     

Формат ответа

Вы можете задать инструкции, определяющие формат ответа. Например, можно попросить отформатировать ответ как таблицу, маркированный список, краткую презентацию, ключевые слова, предложения или абзац. Следующая системная инструкция предписывает модели использовать более разговорный формат ответа:

     All questions should be answered comprehensively with details, unless the user requests a concise response specifically.   
     What is a smart way to make a business that sells DVD's in 2025?   
 Starting a business selling DVDs in 2025 presents significant challenges due to the overwhelming dominance of digital streaming and on-demand services; a "smart" approach would therefore require a highly specialized niche, a strong value proposition beyond just the disc, and likely a focus on community or collector markets rather than mainstream consumption.  Here's a breakdown of what a smart DVD business in 2025 would likely entail:  1. Extreme Niche Specialization: You cannot compete with streaming libraries. Your business must focus on what digital doesn't offer easily or at all. This could include:      * Out-of-Print & Rare Titles: Sourcing films or TV shows that have never been released digitally or are currently unavailable on major streaming platforms.     ....   

Форматируйте ответы с использованием стратегии завершения

Стратегия завершения также может помочь в форматировании ответа. Следующий пример побуждает модель создать план эссе:

 Create an outline for an essay about hummingbirds.   
 Here is a possible outline for an essay about hummingbirds:  I. Introduction A. Hook: Start with a captivating fact or description about hummingbirds (e.g., their speed, iridescent colors, or tiny size). B. Background: Briefly introduce hummingbirds – where they are found (Americas), their reputation as unique birds. C. Thesis Statement: State the main point of the essay, which could be about the remarkable adaptations, behaviors, and ecological importance of hummingbirds.  II. Appearance and Identification .....   

В запросе не был указан формат для контура, и модель выбрала его автоматически. Чтобы модель возвращала контур в определённом формате, вы можете добавить текст, представляющий начало контура, и позволить модели завершить его на основе заданного вами шаблона.

 Create an outline for an essay about hummingbirds. I. Introduction    *   
 Okay, here is an outline for an essay about hummingbirds, starting from the introduction you provided:  I. Introduction * Hook: Start with a captivating fact or description about hummingbirds (e.g., their speed, iridescent colors, or tiny size). * Background: Briefly introduce hummingbirds – where they are found (Americas), their reputation as unique birds, and their general characteristics. * Thesis Statement: State the main point of the essay, focusing on the remarkable adaptations, behaviors, and ecological significance that make hummingbirds extraordinary. .....   

Подсказки с нулевым и малым количеством выстрелов

Вы можете включить в подсказку примеры, которые покажут модели, как правильно её реализовать. Модель пытается выявить закономерности и взаимосвязи в примерах и применяет их при генерации ответа. Подсказки, содержащие несколько примеров, называются подсказками с малым количеством примеров , а подсказки без примеров называются подсказками с нулевым количеством примеров . Подсказки с малым количеством примеров часто используются для регулирования форматирования, формулировки, области действия или общей структуры ответов модели. Используйте конкретные и разнообразные примеры, чтобы помочь модели сузить фокус и генерировать более точные результаты.

Мы рекомендуем всегда включать в подсказки примеры, основанные на нескольких примерах. Подсказки без примеров, вероятно, будут менее эффективными. Более того, вы можете убрать инструкции из подсказки, если ваши примеры достаточно ясно отражают задачу.

Следующий запрос на нулевое значение просит модель выбрать наилучшее объяснение.

 Please choose the best explanation to the question:  Question: How is snow formed? Explanation1: Snow is formed when water vapor in the air freezes into ice crystals in the atmosphere, which can combine and grow into snowflakes as they fall through the atmosphere and accumulate on the ground. Explanation2: Water vapor freezes into ice crystals forming snow. Answer:   
 Explanation1 is the better explanation because it provides more detail on the process, including how ice crystals combine and grow into snowflakes as they fall through the atmosphere.   

Если ваш вариант использования требует, чтобы модель выдавала краткие ответы, вы можете включить в подсказку примеры, которые отдают предпочтение кратким ответам.

В следующем запросе приведены два примера, демонстрирующие предпочтение более коротким объяснениям. В ответе видно, что примеры подтолкнули модель выбрать более короткое объяснение ( Explanation2 ), а не более длинное ( Explanation1 ), как это было ранее.

 Below are some examples showing a question, explanation, and answer format:  Question: Why is the sky blue? Explanation1: The sky appears blue because of Rayleigh scattering, which causes shorter blue wavelengths of light to be scattered more easily than longer red wavelengths, making the sky look blue. Explanation2: Due to Rayleigh scattering effect. Answer: Explanation2  Question: What is the cause of earthquakes? Explanation1: Sudden release of energy in the Earth's crust. Explanation2: Earthquakes happen when tectonic plates suddenly slip or break apart, causing a release of energy that creates seismic waves that can shake the ground and cause damage. Answer: Explanation1  Now, Answer the following question given the example formats above:  Question: How is snow formed? Explanation1: Snow is formed when water vapor in the air freezes into ice crystals in the atmosphere, which can combine and grow into snowflakes as they fall through the atmosphere and accumulate on the ground. Explanation2: Water vapor freezes into ice crystals forming snow. Answer:   
 Answer: Explanation2   

Оптимальное количество примеров

Такие модели, как Gemini, часто способны распознавать закономерности, используя всего несколько примеров, хотя для достижения наилучших результатов вам, возможно, придётся поэкспериментировать с количеством примеров, приводимых в подсказке. В то же время, если включить слишком много примеров, модель может начать переобучать ответ на них.

Шаблоны против анти-шаблонов

Использование примеров для демонстрации модели шаблона, которому нужно следовать, более эффективно, чем использование примеров для демонстрации модели антишаблона, которого нужно избегать.

Отрицательный паттерн:

 Don't end haikus with a question: Haiku are fun A short and simple poem Don't you enjoy them?   

Положительный паттерн:

 Always end haikus with an assertion: Haiku are fun A short and simple poem A joy to write   

Единообразное форматирование

Убедитесь, что структура и форматирование примеров с небольшим количеством ответов одинаковы, чтобы избежать ответов с нежелательным форматом. Одна из основных целей добавления примеров с небольшим количеством ответов в запросы — показать модели формат ответа. Поэтому крайне важно обеспечить единообразие форматирования во всех примерах, обращая особое внимание на XML-теги, пробелы, переносы строк и разделители примеров.

Добавить контекст

Вы можете включить в запрос инструкции и информацию, необходимые модели для решения задачи, вместо того, чтобы предполагать, что у модели есть вся необходимая информация. Эта контекстная информация помогает модели понять ограничения и детали того, что вы от неё просите.

В следующем примере модель просит предоставить рекомендации по устранению неполадок маршрутизатора:

 What should I do to fix my disconnected wifi? The light on my Google Wifi router is yellow and blinking slowly.   
   A yellow blinking light on your Google Wifi router usually indicates a problem   with the internet connection. Here are some steps to troubleshoot and fix the   issue:   1. Restart your router and modem:     - Unplug your modem from the power outlet and wait for 30 seconds.     - Plug your modem back in and wait for it to fully boot up.     - Unplug your Google Wifi router and wait for 30 seconds.     - Plug your Google Wifi router back in and wait for it to fully boot up. .....   

Ответ выглядит как общая информация по устранению неполадок, не относящаяся конкретно к маршрутизатору или состоянию светодиодных индикаторов.

Чтобы настроить ответ для конкретного маршрутизатора, вы можете добавить в приглашение руководство по устранению неполадок маршрутизатора в качестве контекста, на который можно будет ссылаться при предоставлении ответа.

 Answer the question using the text below. Respond with only the text provided. Question: What should I do to fix my disconnected wifi? The light on my Google Wifi router is yellow and blinking slowly.  Text: Color: Slowly pulsing yellow What it means: There is a network error. What to do: Check that the Ethernet cable is connected to both your router and your modem and both devices are turned on. You might need to unplug and plug in each device again.  Color: Fast blinking yellow What it means: You are holding down the reset button and are factory resetting this device. What to do: If you keep holding down the reset button, after about 12 seconds, the light will turn solid yellow. Once it is solid yellow, let go of the factory reset button.  Color: Solid yellow What it means: Router is factory resetting. What to do: This can take up to 10 minutes. When it's done, the device will reset itself and start pulsing white, letting you know it's ready for setup.  Color: Solid red What it means: Something is wrong. What to do: Critical failure. Factory reset the router. If the light stays red, contact Wifi customer support.   
 Check that the Ethernet cable is connected to both your router and your modem and both devices are turned on. You might need to unplug and plug in each device again.   

Добавить префиксы

Префикс — это слово или фраза, добавляемая к содержанию подсказки, которая может иметь несколько целей в зависимости от того, где вы ее разместили:

  • Префикс входных данных: добавление префикса к входным данным сигнализирует о семантически значимых частях входных данных модели. Например, префиксы «English:» и «French:» обозначают два разных языка.
  • Префикс выходных данных: несмотря на то, что выходные данные генерируются моделью, вы можете добавить префикс к выходным данным в запросе. Префикс выходных данных даёт модели информацию об ожидаемом ответе. Например, префикс выходных данных «JSON:» сигнализирует модели, что выходные данные должны быть в формате JSON.
  • Пример префикса: В подсказках с небольшим количеством подсказок добавление префиксов к примерам обеспечивает метки, которые модель может использовать при генерации выходных данных, что упрощает анализ выходного содержимого.

В следующем примере «Текст:» — это входной префикс, а «Ответ:» — выходной префикс.

 Classify the text as one of the following categories. - large - small Text: Rhino The answer is: large Text: Mouse The answer is: small Text: Snail The answer is: small Text: Elephant The answer is:   
 The answer is: large   

Разбейте подсказки на компоненты

В случаях, требующих сложных подсказок, вы можете помочь модели справиться с этой сложностью, разбив ее на более простые компоненты.

  1. Разбивайте инструкции: вместо того, чтобы размещать множество инструкций в одном запросе, создавайте отдельный запрос на каждую инструкцию. Вы можете выбирать, какой запрос обрабатывать, в зависимости от ввода пользователя.

  2. Цепочка подсказок: для сложных задач, состоящих из нескольких последовательных шагов, сделайте каждый шаг подсказкой и объедините подсказки в цепочку. В этой цепочке подсказок результат одной подсказки в последовательности становится входом для следующей. Результат последней подсказки в последовательности является конечным результатом.

  3. Агрегирование ответов: Агрегирование — это процесс, при котором требуется выполнять различные параллельные задачи над разными фрагментами данных и агрегировать результаты для получения итогового результата. Например, вы можете указать модели выполнить одну операцию над первой частью данных, другую — над оставшимися данными и агрегировать результаты.

Эксперимент с параметрами модели

Каждый вызов, отправляемый модели, включает значения параметров, которые управляют тем, как модель генерирует ответ. Модель может генерировать разные результаты для разных значений параметров. Экспериментируйте с разными значениями параметров, чтобы получить наилучшие результаты для задачи. Доступные параметры для разных моделей могут различаться. Наиболее распространённые параметры:

  1. Максимальное количество выходных токенов: определяет максимальное количество токенов, которые могут быть сгенерированы в ответе. Токен состоит примерно из четырёх символов. 100 токенов соответствуют примерно 60–80 словам.

  2. Температура: Температура управляет степенью случайности выбора токенов. Температура используется для выборки при генерации ответов, которая происходит при применении topP и topK . Более низкие температуры подходят для подсказок, требующих более детерминированного или менее открытого ответа, в то время как более высокие температуры могут привести к более разнообразным или креативным результатам. Температура, равная 0, является детерминированной, то есть всегда выбирается ответ с наибольшей вероятностью.

  3. topK : Параметр topK определяет, как модель выбирает токены для вывода. Значение topK , равное 1, означает, что выбранный токен является наиболее вероятным среди всех токенов в словаре модели (это также называется жадным декодированием), а значение topK равное 3, означает, что следующий токен выбирается из трёх наиболее вероятных с учётом температуры. На каждом этапе выбора токена отбираются topK токенов с наивысшими вероятностями. Затем токены фильтруются по значению topP , и окончательный токен выбирается с помощью температурной выборки.

  4. topP : Параметр topP изменяет способ выбора токенов для вывода моделью. Токены выбираются от наиболее к наименее вероятному, пока сумма их вероятностей не станет равна значению topP . Например, если токены A, B и C имеют вероятность 0,3, 0,2 и 0,1, а значение topP равно 0,5, то модель выберет A или B в качестве следующего токена, используя температуру, и исключит C из числа кандидатов. Значение topP по умолчанию равно 0,95.

  5. stop_sequences : задайте последовательность остановки, чтобы модель прекратила генерацию контента. Последовательность остановки может представлять собой любую последовательность символов. Старайтесь избегать использования последовательностей символов, которые могут присутствовать в генерируемом контенте.

Стратегии быстрой итерации

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

  1. Используйте разные формулировки: использование разных слов или формулировок в подсказках часто приводит к разным ответам модели, даже если все они означают одно и то же. Если вы не получаете ожидаемых результатов от своей подсказки, попробуйте перефразировать её.

     Version 1: How do I bake a pie?  Version 2: Suggest a recipe for a pie.  Version 3: What's a good pie recipe?   

  2. Переключитесь на аналогичную задачу: если вы не можете заставить модель следовать вашим инструкциям для задачи, попробуйте дать ей инструкции для аналогичной задачи, которая достигает того же результата.

    Эта подсказка указывает модели классифицировать книгу, используя предопределенные категории:

     Which category does The Odyssey belong to: thriller sci-fi mythology biography   
         The Odyssey belongs to the category of **mythology**.       Here's why:      * **Mythology:** The Odyssey tells the story of Odysseus, a hero from Greek mythology, and his     journey home after the Trojan War. It features gods, monsters, and supernatural events common to     Greek mythology. .....   

    Ответ верный, но модель не уложилась в рамки предложенных вариантов. Также желательно, чтобы модель ответила одним из вариантов, а не полным предложением. В этом случае можно перефразировать инструкцию в вопрос с несколькими вариантами ответов и попросить модель выбрать один из вариантов.

     Multiple choice problem: Which of the following options describes the book The Odyssey? Options:  
    • thriller
    • sci-fi
    • mythology
    • biography
     The correct answer is mythology.  
  3. Измените порядок содержимого подсказки: порядок содержимого подсказки иногда может влиять на ответ. Попробуйте изменить порядок содержимого и посмотрите, как это повлияет на ответ.

    Version 1: [examples] [context] [input]  Version 2: [input] [examples] [context]  Version 3: [examples] [input] [context] 

Запасные ответы

Резервный ответ — это ответ, возвращаемый моделью, когда запрос или ответ активируют фильтр безопасности. Пример резервного ответа: «Я не могу с этим помочь, поскольку я всего лишь языковая модель».

Если модель реагирует некорректно, попробуйте увеличить температуру.

Чего следует избегать

  • Избегайте использования моделей для получения фактической информации.
  • Используйте с осторожностью при решении математических и логических задач.

Генеративные модели под капотом

Целью этого раздела является ответ на вопрос: существует ли случайность в ответах генеративных моделей или они детерминированы?

Короткий ответ — да на оба варианта. При использовании генеративной модели текстовый ответ генерируется в два этапа. На первом этапе генеративная модель обрабатывает входную подсказку и генерирует распределение вероятностей возможных токенов (слов), которые, скорее всего, появятся следующими. Например, если вы используете подсказку с текстом «Собака перепрыгнула через ...», генеративная модель создаст массив вероятных следующих слов:

[("fence", 0.77), ("ledge", 0.12), ("blanket", 0.03), ...] 

Этот процесс является детерминированным: генеративная модель будет создавать одно и то же распределение каждый раз, когда вводит один и тот же текст подсказки.

На втором этапе генеративная модель преобразует эти распределения в текстовые ответы, используя одну из нескольких стратегий декодирования. Простая стратегия декодирования может выбирать наиболее вероятный токен на каждом временном шаге. Этот процесс всегда будет детерминированным. Однако вместо этого можно выбрать генерацию ответа путём случайной выборки из распределения, возвращаемого моделью. Этот процесс будет стохастическим (случайным). Степень случайности, допустимую в этом процессе декодирования, можно контролировать, устанавливая температуру. Температура, равная 0, означает, что выбираются только наиболее вероятные токены, и случайность отсутствует. И наоборот, высокая температура вносит высокую степень случайности в токены, выбираемые моделью, что приводит к более неожиданным и удивительным ответам модели.

Следующие шаги