Skip to Content

Шаблон промпта (Prompt Template)

Описание

Используйте базовый компонент Prompt Template для создания промпта, который передает инструкции и контекст языковой модели (LLM) или агенту отдельно от других входных данных, таких как сообщения чата или загруженные файлы.

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

  • Определить постоянную структуру пользовательских запросов, чтобы модели было легче понимать их и отвечать соответствующим образом.
  • Задать специфический формат вывода для модели, например JSON или структурированный текст.
  • Назначить роль для LLM, например: «You are a helpful assistant» или «You are an expert in microbiology».
  • Позволить модели обращаться к памяти чата.

Компонент Prompt Template также может передавать инструкции в виде переменных другим компонентам, находящимся далее по потоку.

Параметры компонента

Название (Name)Отображаемое имяОписание (Description)
templateTemplateВходной параметр. Создайте шаблон промпта с динамическими переменными в фигурных скобках, например {VARIABLE_NAME}. Если ваш шаблон содержит обычный текст с фигурными скобками, используйте двойные скобки {{...}}, чтобы избежать их интерпретации как переменных.
promptPrompt MessageВыходной параметр. Сформированное сообщение промпта, возвращаемое методом build_prompt.

Определение переменных в промптах

Переменные в компоненте Prompt Template динамически добавляют поля в сам компонент. Это позволяет вашему потоку получать значения для этих полей из других компонентов, глобальных переменных Langflow или фиксированного ввода.

Например, при использовании компонента Message History вы можете использовать переменную {memory} для передачи истории чата в промпт. Однако стоит помнить, что компонент Agent уже включает в себя встроенную память чата, активированную по умолчанию.

Как добавить переменные в компонент Prompt Template

  1. Создайте поток на основе шаблона Basic Prompting.
    • Этот шаблон уже содержит компонент Prompt Template, но он включает только текстовые инструкции без переменных. Такой промпт определяет роль LLM, но не может динамически адаптироваться к изменяющемуся контексту.
  2. Добавьте переменные в поле Template:
    • Переменные объявляются путем заключения имени переменной в фигурные скобки, например {имя_переменной}.
    • Пример шаблона с переменными context и user_question:
      Учитывая контекст:
      {context}
      Ответь на вопрос:
      {user_question}.
    • Если ваш шаблон должен содержать обычные фигурные скобки как текст, используйте двойные скобки {{...}}, чтобы система не приняла их за переменную.
  3. Нажмите Check & Save, чтобы сохранить шаблон.
    • После сохранения для каждой переменной в компоненте Prompt Template появятся новые входные поля.
  4. Укажите данные для полей переменных:
    • Подключите поля к другим компонентам, чтобы передавать их вывод в переменные.
    • Используйте глобальные переменные конструктора.
    • Введите фиксированные значения напрямую в поля.

Вы можете добавлять неограниченное количество переменных, таких как {references} или {instructions}, и наполнять их данными из таких компонентов, как Text Input, URL или Read File.