Настройка пользовательского API LangChain

Подключите LangChain ChatOpenAI к TokenHub и проверьте минимальный вызов модели перед созданием цепочек или агентов.

Что такое Лангчейн?

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: проверяйте одну возможность за раз

  1. Сначала запустите минимальный вызов invoke, чтобы подтвердить нормальное завершение чата.
  2. Добавляйте stream только тогда, когда работает базовый вызов. Когда OPENAI_BASE_URL указывает на стороннюю конечную точку, LangChain не включает stream_usage автоматически; установите stream_usage=True только в том случае, если модель TokenHub и конечная точка поддерживают использование потоковой передачи.
  3. Для агента свяжите один минимальный инструмент с bind_tools и проверьте tool_calls на возвращаемом объекте. Не рассматривайте текст, который просто описывает вызов, как вызов инструмента.
  4. Проверяйте структурированный вывод, изображения и рассуждения только после того, как эти слои заработают.

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, специфичную для поставщика, или обрабатывайте необработанный ответ напрямую.

Официальная ссылка

Как выбрать модель

НагрузкаВыбор моделиПочему подходит
Сложные задачиМодель рассуждений с инструментамиПодходит для планирования, многошаговых задач и длинного контекста.
Ежедневная работаСбалансированная модельБаланс качества, скорости и стоимости.
Сводки и лёгкие задачиБыстрая недорогая модельСнижает стоимость сводок и простых итераций.
Открыть модели TokenHub

Чат 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。