
Miniprompt является минимальным входным синтаксисом для генерации комплексных выходов от LLMS (например, GPT-4). С помощью простого и эффективного синтаксиса MiniPrompt может предоставить подробную информацию или ответы в различных форматах вывода, таких как JSON, JavasRcipt или другие языки.
Совместим с? ️? Лангхейн
Чтобы начать использовать MiniPrompt, вам необходимо определить задачу, шаблон и желаемый выходной формат. Входной синтаксис предназначен для простых в использовании и понимании, что позволяет пользователям генерировать выходы, адаптированные к их потребностям. Пример ввода
Определите формат задачи, шаблона и вывода следующим образом:
TASK: ScrumSprint,<=3 userStories,<=3 acceptanceCriteria,complexity(1-5),Scope: "Login page"
TEMPLATE: complexity,stories[complexity,story"As a User,I want …,so that …",criteria[When,Then]]
OUTPUT: JSON
Этот вход будет генерировать выход JSON с указанными требованиями.
На основании заданного ввода генерируется следующий вывод JSON:
{
"complexity" : 3 ,
"stories" : [
{
"complexity" : 3 ,
"story" : "As a User, I want to create an account, so that I can access the login page." ,
"criteria" : [
{
"When" : "I enter a valid email address and password" ,
"Then" : "I should be redirected to the login page"
} ,
{
"When" : "I enter an invalid email address or password" ,
"Then" : "I should see an error message"
} ,
{
"When" : "I try to create an account with an existing email address" ,
"Then" : "I should see an error message"
}
]
} ,
{
// …
} ,
{
// …
}
]
}Эта подсказка предназначена для создания вывода пользовательских историй JSON, каждая из которых со своими критериями принятия, для спринта Scrum, сфокусированного на «странице входа в систему». Давайте разбим каждую часть быстрого шага за шагом:
TASK : это определяет задачу, которая будет выполнена. В этом случае задача генерирует информацию для спринта Scrum.
ScrumSprint : тип задачи, которая будет выполнена (спринт Scrum).<=3 userStories : вывод должен иметь максимум 3 пользовательских историй.<=3 acceptanceCriteria : каждая пользовательская история должна иметь максимум 3 критериев принятия.complexity(1-5) : сложность каждой пользовательской истории должна быть оценена между 1 (наименьшим сложным) и 5 (наиболее сложным).Scope: "Login page" : область спринта Scrum - это разработка страницы входа в систему. TEMPLATE : это определяет шаблон для генерации вывода. Шаблон структурирован следующим образом:
complexity : включите сложность пользовательской истории в вывод.stories : Включите пользовательские истории в вывод. Каждая пользовательская история должна иметь следующую информацию:complexity : рейтинг сложности пользовательской истории.story"As a User, I want …, so that …" : сама история пользователя, написанная в формате «как пользователь, я хочу [goal] , чтобы [reason] ».criteria[When, Then] : критерии принятия истории пользователя, написанные в формате «Когда [condition] , затем [expected outcome] ». OUTPUT : это определяет желаемый формат вывода. В этом случае вывод должен быть в формате JSON.
Основываясь на этой подсказке, ИИ будет генерировать объект JSON, содержащий до 3 пользовательских историй, каждая из которых с 3 критериями принятия и их оценками сложности. Объем этих пользовательских историй ограничивается разработкой страницы входа в систему.
вход
Подсказка ввода состоит из формата задачи, шаблона и вывода:
TASK: add a red box
TEMPLATE: const c=document.getElementById('c')
OUTPUT: JavaScript
TASK : задача состоит в том, чтобы добавить красную коробку с помощью JavaScript.TEMPLATE : Предоставленный шаблон включает в себя часть кода JavaScript, необходимой для рисования красной коробки:OUTPUT : желаемый выходной формат - JavaScript.Выход
const c = document . getElementById ( 'c' ) ;
const ctx = c . getContext ( '2d' ) ;
ctx . fillStyle = 'red' ;
ctx . fillRect ( 20 , 20 , 100 , 100 ) ; В определенных ситуациях вывод, сгенерированный AI, может содержать кодовые блоки, встроенные в текст разметки. Чтобы правильно обрабатывать и интерпретировать вывод, рекомендуется использовать анализатор, специально предназначенный для извлечения кодовых блоков из содержимого разметки.
Подумайте об использовании анализатора, подобного тому, что показано ниже, чтобы извлечь кодовые блоки из выхода, сгенерированного AI:
function extractCode ( string : string ) {
// The regular expression pattern to match the code block
const codeBlockPattern = / (`{3,})(w*)n([sS]*?)1 / g ;
// Find the matches using the regular expression
const matches = codeBlockPattern . exec ( string ) ;
if ( matches && matches . length >= 4 ) {
// Return content of the code block
return matches [ 3 ] ;
}
// No code block found, return original string
return string ;
}Эта функция JavaScript, ExtractCode, использует регулярное выражение для сопоставления и извлечения содержимого блоков кода из входной строки. Если кодовый блок найден, функция возвращает содержимое блока кода. Если кодовый блок не обнаружен, исходная входная строка возвращается.
Хотя это и не обязательно, использование системного сообщения может улучшить согласованность и точность ответов, сгенерированных AI, обеспечивая придерживаться указанных руководящих принципов.
Системное сообщение служит набором инструкций для модели языка искусственного интеллекта, направляя его для создания ответов, которые соответствуют предоставленным руководящим принципам и желаемому формату вывода.
You are an Entity that strictly answers with the OUTPUT format. You strictly follows the TASK, TEMPLATE and OUTPUT guidelines.
Системное сообщение имеет три основных компонента, по которым ИИ должен строго следовать:
TASK : ИИ должен понимать и выполнить задачу, как указано в приглашении.TEMPLATE : ИИ должен использовать заданный шаблон для структуры его ответа, обеспечивая его соответствие требуемому формату и организации.OUTPUT : ИИ должен обеспечить сгенерированный ответ в указанном формате выходного вывода (например, JSON, простой текст и т. Д.).Чтобы использовать системное сообщение в ваших подсказках, просто включите следующее сообщение в начале вашей подсказки:
You are an Entity that strictly answers with the OUTPUT format. You strictly follow the TASK, TEMPLATE and OUTPUT guidelines.
Затем предоставьте инструкции по задаче, шаблону и выводу по мере необходимости. Модель языка ИИ будет следовать этим инструкциям, чтобы создать ответ, который соответствует указанным руководящим принципам и формату. Пример
Используя системное сообщение в API OpenAI:
[
{
"role": "system",
"content": "You are an Entity that strictly answers with the OUTPUT format. You strictly follow the TASK, TEMPLATE and OUTPUT guidelines."
},
{
"role": "user",
"content": "TASK: ScrumSprint,<=3 userStories,<=3 acceptanceCriteria,complexity(1-5),Scope: "Login page"nTEMPLATE: complexity,stories[complexity,story"As a User,I want …,so that …",criteria[When,Then]]nOUTPUT: JSON."
}
]
Используя системное сообщение в подсказке в Chatgpt:
You are an Entity that strictly answers with the OUTPUT format. You strictly follow the TASK, TEMPLATE and OUTPUT guidelines.
TASK: ScrumSprint,<=3 userStories,<=3 acceptanceCriteria,complexity(1-5),Scope: "Login page"
TEMPLATE: complexity,stories[complexity,story"As a User,I want …,so that …",criteria[When,Then]]
OUTPUT: JSON
С помощью этой подсказки модель языка искусственного интеллекта будет генерировать выход JSON, содержащий до 3 пользовательских историй, каждая из которых с 3 критериями принятия и оценками сложности. Объем этих пользовательских историй ограничивается разработкой страницы входа в систему.