Инженерный курс по антропным подсказкам - Глава 1: Основные структуры подсказок

программы

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

Сайт Клод Расширение for Sheets обеспечивает Несколько особенностейВы можете использовать эти функции для вызова Claude. Одной из таких функций является CLAUDEMESSAGES(), которая построена таким образом, чтобы отражать API для обмена сообщениями Структура.

CLAUDEMESSAGES() может принимать несколько аргументов в следующем порядке:

  1. Ваши советы в кавычках.
  2. Версии моделей, в кавычках
  3. какой бы ни былНеобязательные дополнительные параметрыНапример, температура, системные предупреждения, максимальное количество отметок и т.д.

Внимание: Температура связана с изменчивостью ответов Клода. В этих упражнениях мы установили значение Temperature равным 0. В главе 8 мы изучим температуру более подробно.

Вызовите Claude из любого места с помощью формулы CLAUDEMESSAGES(). Основная структура формулы выглядит следующим образом:=CLAUDEMESSAGES("{PROMPT}", "{MODEL_VERSION}", "system", "{SYSTEM_PROMPT}")

Например, чтобы вызвать подсказку Claude 3 Haiku, расположенную в ячейке A1, нужно написать: =CLAUDEMESSAGES(A1, "claude-3-haiku-20240307", "system", "Respond in Esperanto only")

Как соотнести структуру CLAUDEMESSAGES() со структурой API Messages? Давайте рассмотрим несколько примеров подсказок, отправленных в CLAUDEMESSAGES(), и формулы, лежащие в их основе.

Описание параметров

Антропология предоставляет два API, традиционныйAPI завершения текстаи текущийAPI для обмена сообщениями. В этом руководстве мы будем использовать только API обмена сообщениями.

Как минимум, для вызова Claude с помощью API Messages требуются следующие параметры:

  • model: Модель, которую вы собираетесь вызватьНазвание модели API
  • max_tokens: Максимальное количество маркеров, которое нужно сгенерировать до остановки. Обратите внимание, что Claude может остановиться, не достигнув этого максимума. Этот параметр задает только абсолютное максимальное количество маркеров, которые нужно сгенерировать. Кроме того, этожёсткая остановкаЭто означает, что Клод может перестать генерироваться на середине слова или предложения.
  • messages: массив входных сообщений. Наша модель обучается на чередующихсяuserответить пениемassistantдиалоговые раунды для запуска. При создании новогоMessageКогда вы используете параметр messages для указания предыдущего раунда диалога, модель генерирует следующий раунд диалога.Message.
    • Каждое входное сообщение должно быть сообщением, содержащим 角色 ответить пением 内容 объекта. Вы можете указать отдельный 用户-ролевое сообщение, или может содержать несколько 用户 ответить пением 助手 сообщений (если таковые имеются, они должны чередоваться). В первом сообщении всегда должно использоваться имя пользователя 角色.

Существуют также некоторые необязательные параметры, например

  • system: Системные советы - подробнее об этом ниже.
  • temperature: Степень вариативности реакции Клода. В ходе этих уроков и упражнений мы温度Установите значение 0.

Полный список всех параметров API можно найти на нашем сайтеДокументация API.

типичный пример

Давайте посмотрим, как Клод ответит на правильно оформленные подсказки. Не беспокойтесь о том, как генерируются ответы.

Пример 1

输入:
用户:嗨,克劳德,你好吗?

输出:
我很好,谢谢关心!作为人工智能助手,我没有人类那样的情感,但我运行正常,随时准备回答您的问题或帮助您完成任何任务。今天我能帮您什么忙?

Пример 2

输入:
用户:你能告诉我海洋的颜色吗?

输出:
海洋的颜色会因几个因素而有所不同:  

- 深度 - 海洋在较深的水域中呈现蓝色,这是因为阳光与水分子相互作用的方式。较浅的水域可能呈现更绿色、青绿色,甚至棕色,这取决于海底。  
 
- 悬浮颗粒 - 水中的浮游生物、沉积物或藻类等物质会影响海洋的颜色,使其看起来更绿、更棕甚至呈红色。  

- 天气状况 - 天空的颜色可以反射在海洋表面,使它在阴天时看起来更灰、更白,甚至更黑。  

- 地理位置——不同海域可以根据纬度、洋流和当地海洋生物等因素呈现出略微不同的色调。  
 
总体来说,开阔海洋的占主导地位的颜色是深邃、丰富的蓝色。这是由于阳光与水的相互作用以及海洋深处缺乏悬浮颗粒。但海洋的颜色确实会根据具体条件而有所不同。

Пример 3

输入:
用户:Celine Dion 是哪一年出生的?

输出:
迪奥娜·塞琳出生于 1968 年 3 月 30 日。

Теперь давайте рассмотрим несколько неправильно отформатированных подсказок. Функция CLAUDEMESSAGES() возвращает ошибку для этих плохо отформатированных подсказок. Вот одна из них, в которой отсутствует начало слова "User:".

Пример ошибки 1

输入:
Celine Dion 是哪一年出生的?

输出:
⚠️=CLAUDEMESSAGES prompt should be in ""User: ... Assistant: ..."" format, with ""User: ..."" first. For newlines, press Ctrl/Cmd+Enter⚠️

Вот совет по чередованию ролей пользователя и помощника.

Пример ошибки 2

输入:
用户:Celine Dion 是哪一年出生的?
用户:还有,你能告诉我一些关于她的其他事实吗?

输出:
#ERROR!

Вот совет, в котором слишком много переносов строк в начале.

Пример ошибки 3

输入:
用户:Celine Dion 是哪一年出生的?

输出:
⚠️=CLAUDEMESSAGES prompt should be in "User: ... Assistant: ..." format, with "User: ..." first. For newlines, press Ctrl/Cmd+Enter⚠️

Сообщения "Пользователь" и "Помощник" должны чередоватьсяи сообщение должно начинаться с "User:".

При использовании CLAUDEMESSAGES() не забудьте разграничить сообщения (сообщение - это отдельный раунд пользователя или помощника), вставив между каждым сообщением разрывы строк. Если вы этого не сделаете, Claude не вернет ошибку, но Claude будет рассматривать все, что не разделено переводами строк, как одно сообщение.

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

Вы можете использовать системные подсказки, чтобы дать Клоду инструкции и указания. Системная подсказка - это раунд "пользователя", который происходит перед тем, как Клоду задается вопрос или задача.Обеспечьте контекст, инструкции и руководствоОдин из способов сделать это.

Системные подсказки структурно отделены от списков сообщений пользователя и помощника, поэтому при использовании CLAUDEMESSAGES() они являются отдельным параметром "системная подсказка". Чтобы облегчить вам работу в этом учебнике, мы предоставили поля ввода системных реплик, которые используются для ввода полной формулы CLAUDEMESSAGES() для вызова Claude.

Пример 1

输入:
	System Prompt
	你的回答应始终是一系列推动对话深入的批判性思考问题(不要为这些问题提供答案)。请勿直接回答用户的问题。

	Prompt
	用户:为什么天空是蓝色的?


输出:
以下是一些用于进一步探讨为什么天空是蓝色的批判性思维问题:
- 为什么天空呈现蓝色?
- 地球大气成分如何导致天空呈现蓝色?
- 可见光的波长在使天空呈现蓝色中扮演什么角色?
- 不同波长的光散射特性如何影响天空的颜色?
- 其他哪些因素,如一天中的时间或天气状况,会影响天空的外观?
- 科学家们历史上是如何解释和研究蓝天现象的?
- 有哪些替代观点或理论被提出来说明天空为什么是蓝色的?
通过探索这些类型的问题,我们可以更深入地了解导致天空熟悉蓝色调的科学原理和机制。

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

Для получения дополнительной информации посетите наш сайт наКак использовать системные оповещенияДокументация для использования с Claude.

Если вы готовы попробовать упражнения из этой главы, щелкните по ссылкам ниже. Если вы хотите попробовать любой из примеров этого курса, прокрутите страницу вниз!

упражнение

Упражнение 1.1 - Счет до трех

Используя правильный формат пользователя/помощника, напишите подсказку в желтой ячейке ниже, попросив Клода сосчитать до трех.

Помните, что если ваш ответ правильный (то есть форматирование и подсказки верны), ячейка ответа Клода станет зеленой.

Пример:

输入:
User: 数到 3。

输出:
1, 2, 3.

❓ Если вам нужно напоминание, нажмите на знак "плюс" (➕) в крайнем левом углу этой строки.

Упражнение 1.2 - Системные советы

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

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

Пример:

输入:
	System Prompt
	像 3 岁的孩子一样写作。
	
	Prompt
	User: 天空有多大?

输出:
天空好大哦!它在那儿,好高好高哦!你都看不到它的尽头呢!它是蓝蓝的,里面有好多好多云朵。我好想跳起来摸摸天空,但我够不到。它太高了!天空又大又漂亮,我想一直盯着它看!

❓ Если вам нужно напоминание, нажмите на знак "плюс" (➕) в крайнем левом углу этой строки.

© заявление об авторских правах

Похожие статьи

Нет комментариев

Вы должны войти в систему, чтобы участвовать в комментариях!
Войти сейчас
нет
Нет комментариев...