Inference Gateway: единый интерфейс для доступа к API языковых моделей
Inference Gateway — это облачно-ориентированный и высокопроизводительный шлюз для объединения нескольких провайдеров LLM, от локальных решений, таких как Ollama, до крупных облачных сервисов вроде OpenAI и Anthropic.
Проект упрощает доступ к API различных языковых моделей, предоставляя единый интерфейс, совместимый с OpenAI. Это позволяет разработчикам легко переключаться между различными поставщиками и пробовать разные модели без необходимости менять код. Он полезен для тех, кто хочет интегрировать несколько языковых моделей в свои приложения или просто тестировать их возможности.
Проект написан на Go и запускается с помощью Docker. На сайте документации можно найти инструкции по установке и первому запуску. Учитывай, что проект ещё находится на ранней стадии разработки, поэтому возможны несовершенства в функционале.
Открытый, облачный, высокопроизводительный шлюз, объединяющий множество поставщиков LLM за одним API, совместимым с OpenAI
Inference Gateway — это прокси-сервер, который упрощает доступ к другим языковым модельным API. Он позволяет пользователям взаимодействовать с различными языковыми моделями через единый интерфейс, что облегчает настройку и процесс отправки запросов и получения ответов от нескольких LLM, а также упрощает использование Mixture of Experts.
Ключевые особенности
- 🔀 Унифицированный API: Один конечный пункт, совместимый с OpenAI, для работы с различными поставщиками, такими как OpenAI, Anthropic, Groq и другими.
- 🔧 Поддержка использования инструментов: Возможности вызова функций через единый API.
- 🌐 Поддержка Model Context Protocol (MCP): Интеграция MCP для автоматического обнаружения инструментов от серверов MCP.
- 🌊 Стриминг: Реальный стриминг токенов от всех поддерживаемых провайдеров.
- 🐳 Поддержка Docker: Легкая настройка и развертывание через контейнеры.
- 🛡️ Готовность к использованию в крупных компаниях: Поддержка аутентификации OIDC, авторизации и TLS.
Установка и запуск
Рекомендуется устанавливать Inference Gateway как контейнер, что обеспечивает лучшую изоляцию, упрощает обновления и управление конфигурацией. Ты можешь развернуть его с помощью Docker или Kubernetes.
Самый простой способ установки — использовать автоматизированный установочный скрипт. Вот как это сделать:
curl -fsSL https://raw.githubusercontent.com/inference-gateway/inference-gateway/main/install.sh | bash
После установки можно запустить шлюз, предварительно задав необходимые переменные окружения, например, для API ключа:
export OPENAI_API_KEY="your-api-key"
inference-gateway
Как это работает
Когда клиент отправляет запрос, запрос проходит через Inference Gateway, который пересылает его к соответствующему поставщику языковой модели и возвращает ответ клиенту. Ты можешь указать поставщика явным образом через параметры запроса.
Пример запроса к модельным языковым моделям:
curl -X POST http://localhost:8080/v1/chat/completions \
-d '{
"model": "openai/gpt-3.5-turbo",
"messages": [
{
"role": "system",
"content": "You are a pirate."
},
{
"role": "user",
"content": "Hello, world! How are you doing today?"
}
],
}'
Для streaming-ответов просто добавь в тело запроса параметр stream: true.
Ограничения и настройки
У Inference Gateway есть ряд параметров конфигурации, которые можно задать через переменные окружения. К примеру, поддержка обработки изображений (vision) отключена по умолчанию и может быть включена с помощью VISION_ENABLED=true.
Также важно учесть, что некоторые возможности, такие как стриминг токенов или использование инструментов через MCP, могут требовать включения дополнительных параметров.
Документация и поддержка
Для получения подробной информации о настройках, примерах и API ты можешь обратиться к [документации](https://docs.inference-gateway.com). Если у тебя возникнут вопросы, ты можешь открыть issue на GitHub или участвовать в обсуждениях.
Открыть на GitHub: inference-gateway/inference-gateway →
RepoRadar