Я продолжал сталкиваться с одними и теми же инструментами создания компромиссных затрат для команд, реализующих функции LLM. Все инструменты атрибуции в этом пространстве работают одинаково: вы указываете base_url на прокси, и он видит каждый вызов до того, как он произойдет. Это искренне...
Я продолжал сталкиваться с одними и теми же инструментами создания компромиссных затрат для команд, реализующих функции LLM. Все инструменты атрибуции в этом пространстве работают одинаково: вы указываете base_url на прокси, и он видит каждый вызов до того, как он произойдет. Это действительно полезно, если вы хотите заблокировать или понизить рейтинг вызова до того, как он сработает. Это также означает, что время безотказной работы прокси-сервера теперь равно вашему времени безотказной работы, и вы добавили сетевой переход к каждому отдельному запросу.
Я хотел указать атрибуцию, вообще не касаясь пути запроса. Поэтому вместо этого я написал обертку.
Cognocient напрямую объединяет клиенты OpenAI и Anthropic Python. Вы по-прежнему вызываете client.chat.completions.create() точно так же, как всегда. Оболочка рассчитывает время вызова, а затем запускает отчет о затратах в фоновом потоке после того, как ваш реальный ответ уже вернулся в ваш код.
На самом деле я потратил больше всего времени не на счастливый путь, а на то, чтобы убедиться, что мертвая конечная точка отчетов никогда не сможет коснуться вашего приложения. Если API приема Cognocient работает медленно, работает медленно или просто не существует, этот сбой должен оставаться невидимым для всего, что вы создаете. Никаких исключений и никаких повторных попыток, блокирующих ваш реальный вызов. Существует тест test_reporter_failure_isolation.py, который