Что такое Лангчейн?
LangChain — это платформа приложений для создания чата, поиска, рабочего процесса и взаимодействия с агентами на базе LLM.
Это руководство LangChain настраивает поддерживаемую интеграцию langchain-openai с базой API, совместимой с TokenHub. Сначала протестируйте базовый путь вызова, а затем проверьте потоковую передачу, структурированный вывод или инструменты на предмет возможностей, необходимых вашему приложению. Минимальный вызов ChatOpenAI проверяет базовую связь, но не проверяет каждую функцию, используемую производственным приложением. Независимо тестируйте потоковую передачу, структурированный вывод, привязку инструментов, повторные попытки и тайм-ауты, а затем добавляйте извлечение, цепочки или агенты только после того, как выбранная модель TokenHub передаст возможности, необходимые вашему рабочему процессу.
Официальная интеграция LangChain с Python для OpenAI находится в отдельном пакете langchain-openai. Подключите TokenHub, передав пользовательский base_url в ChatOpenAI. Это интеграция кода; нет экрана настроек приложения.
Шаг 1. Установите официальный пакет интеграции.
pip install -U langchain-openaiДля проекта, управляемого uv, используйте uv add langchain-openai. Установка базового пакета langchain сама по себе не обеспечивает ChatOpenAI.
Шаг 2. Создайте экземпляр ChatOpenAI явно для TokenHub.
export TOKENHUB_API_KEY="sk-..."import os
from langchain_openai import ChatOpenAI
model = ChatOpenAI(
base_url="__API_BASE_URL__/v1",
api_key=os.environ["TOKENHUB_API_KEY"],
model="YOUR_TOKENHUB_MODEL_ID",
timeout=60,
max_retries=2,
)
response = model.invoke("Reply with one sentence to confirm the connection.")
print(response.content)Базовое разрешение URL отдает предпочтение base_url / openai_api_base конструктора, затем OPENAI_API_BASE, за которым следует OPENAI_BASE_URL базового SDK. Его явная передача не позволяет старому OpenAI URL в среде проекта переопределять TokenHub.
Шаг 3: проверяйте одну возможность за раз
- Сначала запустите минимальный вызов
invoke, чтобы подтвердить нормальное завершение чата. - Добавляйте
streamтолько тогда, когда работает базовый вызов. КогдаOPENAI_BASE_URLуказывает на стороннюю конечную точку, LangChain не включаетstream_usageавтоматически; установитеstream_usage=Trueтолько в том случае, если модель TokenHub и конечная точка поддерживают использование потоковой передачи. - Для агента свяжите один минимальный инструмент с
bind_toolsи проверьтеtool_callsна возвращаемом объекте. Не рассматривайте текст, который просто описывает вызов, как вызов инструмента. - Проверяйте структурированный вывод, изображения и рассуждения только после того, как эти слои заработают.
ChatOpenAI явно нацелен на поля спецификации OpenAI API. Расширения, специфичные для поставщика, такие как reasoning_content, reasoning или reasoning_details, не могут быть извлечены или сохранены. Успешный текстовый ответ не доказывает, что эти расширения работают.
Устранение неполадок на слое LangChain, на котором произошел сбой.
- Ошибка импорта: убедитесь, что
langchain-openaiустановлен. - 404: проверьте действующий
base_url, включая/v1, и проверьте наличие переопределений переменных среды. - Ошибка модели: используйте полный идентификатор модели TokenHub в
model. - Потоковая передача текста работает, но использование отсутствует: проверьте
stream_usageи поддерживает ли конечная точкаstream_options.include_usage. - Сбой инструмента агента: изолируйте его с помощью
bind_tools; Успешный базовыйinvokeне является тестом инструмента. - Нестандартное поле рассуждения отсутствует: используйте интеграцию LangChain, специфичную для поставщика, или обрабатывайте необработанный ответ напрямую.
Официальная ссылка
Как выбрать модель
Чат LangChainOpenAI: часто задаваемые вопросы
Как мне указать ChatOpenAI на TokenHub?
Задайте для base_url корень API TokenHub, заканчивающийся на /v1, передайте ключ TokenHub как api_key и задайте для модели точный идентификатор TokenHub.
Могу ли я использовать OPENAI_API_BASE вместо base_url?
LangChain может читать документированные переменные среды базового URL-адреса OpenAI, но явный base_url лучше всего подходит для одной интеграции.
Доказывает ли успешный вызов, что агент будет работать?
Нет. Это доказывает базовую возможность подключения к чату. Прежде чем использовать эти функции, проверьте вызов инструментов, потоковую передачу и структурированный вывод.
Нужен ли мне пакет langchain-openai?
Да. ChatOpenAI поддерживается в пакете интеграции langchain-openai; установите версию, совместимую с остальной частью вашего проекта LangChain.
Как устранить неполадку LangChain 404?
Убедитесь, что base_url заканчивается на /v1, удалите повторяющиеся пути запросов и проверьте точный идентификатор модели, прежде чем проверять журналы запросов TokenHub.
Источники
Эта настройка основана на TokenHub и официальной документации; последняя проверка: 2026-09-08。