Я начал работать с языковыми моделями пять лет назад, когда возглавлял команду, создавшую CodeSearchNet — предшественника GitHub CoPilot. С тех пор я видел множество успешных и неуспешных подходов к созданию продуктов на базе LLM. Я обнаружил, что неуспешные продукты почти всегда имеют одну общую коренную причину: отсутствие надежных систем оценки.
Если Discourse AI призван обеспечивать критически важные для бизнеса задачи с использованием LLM, я считаю, что приоритетом должна стать поддержка инструментов мониторинга, таких как LangSmith.
Использование LangSmith так же просто, как запуск команды yarn add langchain langsmith и добавление нескольких переменных окружения.
Думала ли команда Discourse о том, как мы можем настроить трассировку LLM? Также есть ли какие-либо идеи о том, как мы можем реализовать это до того, как поддержка будет официально добавлена в модуль discourse-ai?
Мы регистрируем каждый запрос и ответ LLM в таблице и позволяем администраторам в любое время выполнять по ним запросы через Data Explorer. Вы уже пробовали это?
{
"max_tokens": 2000,
"model": "meta-llama/Meta-Llama-3.1-70B-Instruct",
"temperature": 0,
"stop": [
"\n</output>"
],
"messages": [
{
"role": "system",
"content": "Вы — корректор Markdown. Вы исправляете грубые опечатки и стилистические ошибки, но сохраняете оригинальный стиль автора.\nВы не трогаете блоки кода. Я предоставлю вам текст для корректуры. Если исправлений не требуется, вы вернёте текст как есть.\nТекст будет находиться между XML-тегами <input> и </input>.\nВы ВСЕГДА будете возвращать исправленный текст между XML-тегами <output> и </output>.\n\n"
},
{
"role": "user",
"content": "<input>Мы регистрируем каждый запрос и ответ LLM в таблице и позволяем администраторам в любое время выполнять по ним запросы через Data Explorer. Вы уже пробовали?</input>"
}
]
}
{
"id": "chat-45cd241b6e0f4a58840fcc9f49dfa56a",
"object": "chat.completion",
"created": 1722528517,
"model": "meta-llama/Meta-Llama-3.1-70B-Instruct",
"choices": [
{
"index": 0,
"message": {
"role": "assistant",
"content": "<output>Мы регистрируем каждый запрос и ответ LLM в таблице и позволяем администраторам в любое время выполнять по ним запросы через Data Explorer. Вы уже пробовали это?</output>",
"tool_calls": []
},
"logprobs": null,
"finish_reason": "stop",
"stop_reason": null
}
],
"usage": {
"prompt_tokens": 135,
"total_tokens": 174,
"completion_tokens": 39
}
}
Создание eval для наших функций, безусловно, входит в наш план развития на версию 3.4, особенно для доработки функций «Связанные темы» и «Резюмирование».
Я не говорил, что всё ограничивается этим. () Но, думаю, это не имеет значения, поскольку, насколько я понимаю, вызовы LLM осуществляются из Ruby.
Пока нет, но это блестяще — спасибо! Теоретически я мог бы экспортировать эти данные и программно создавать трассировки в LangSmith для оценки и экспериментов.