Какой из промптов будет давать более точный ответ?
Промпты почти одинаковые, меняется только порядок.
from openai import OpenAI
client = OpenAI()
prompt1 = f"How many times is word 'RAG' mentioned in the text? Answer with a number.\n<text>{text}</text>"
prompt2 = f"<text>{text}</text>\nHow many times is word 'RAG' mentioned in the text? Answer with a number."
for p in [prompt1, prompt2]:
completion = client.chat.completions.create(
temperature=0,
model="gpt-4o-2024-11-20",
messages=[
{"role": "user", "content":p}
]
)
print(completion.choices[0].message.content)
Сможете ответить сходу и объяснить почему?
Если сложно сказать, попробуйте запустить код несколько раз и убедиться сами. Абзац текста я добавлю в комментарии.
Второй вопрос - а какой из промптов будет давать более точный ответ в случае использования Structured Output и почему? 😜
class Response(BaseModel):
how_many_times_is_word_RAG_mentioned_in_text: int
for p in [prompt1, prompt2]:
completion = client.beta.chat.completions.parse(
model="gpt-4o-2024-11-20",
temperature=0,
response_format=Response,
messages=[
{"role": "user", "content": p}
]
)
print(completion.choices[0].message.parsed)
Ваш, @llm_under_hood 🤗
PS: Это новая задачка, которую я решил добавить в практическую часть курса для выработки интуиции. Уж больно она наглядная и неожиданная.
>>Click here to continue<<