ПРИМЕЧАНИЕ. Это исследовательский проект. Пожалуйста, не используйте его в коммерческих целях и используйте его ответственно.
В этом проекте реализован веб-API, который предлагает унифицированный интерфейс для Google Gemini и Claude 3.
Самостоятельное размещение: Python/FastAPI обеспечивает гибкость и возможность запуска где угодно. Не привязан к проприетарным платформам.
Поддержка потоковой передачи: ответы Клода в режиме реального времени.
Легкий и масштабируемый: создан с использованием FastAPI для обеспечения высокой производительности.
Ключ API: ключ API не требуется.
✅ Интеграция API Claude-3 также полностью реализована и доступна.
✅ Интеграция Google Gemini API доступна уже сейчас
✅ Конфигурация пользовательского интерфейса : реализация маршрутизации для локального хоста: путь 8000/WebAI.
ПИП : В процессе
Этот репозиторий актуален.
Пожалуйста, не забудьте поставить звезду
Версия Python >= 3.10 Аккаунты на следующих аккаунтах (все предлагают бесплатную регистрацию):
Затем добавьте свои токены в файл Config.conf
. (см. раздел «Конфигурация» ).
Примечание
Примечание . Claude и Gemini предлагают опцию автоматического входа — вы можете войти в систему через браузер и пропустить этот шаг.
git clone https://github.com/Amm1rr/WebAI-to-API.git && cd WebAI-to-API
python -m venv .venv
source .venv/bin/activate # Linux/macOS
.venv S cripts a ctivate # Windows
pip install -r requirements.txt
Перейдите в каталог webai2api
и запустите веб-сервер:
cd WebAI-to-API/webai2api/
python run.py
Теперь документация по API и веб-интерфейс конфигурации должны быть доступны по следующим адресам:
Кончик
Откройте конфигурацию веб-интерфейса: http://localhost:8000/WebAI.
Открытая документация API: http://localhost:8000/docs.
Примечание
Близнецы
http://localhost:8000/gemini
Клод
http://localhost:8000/claude
Клод/Близнецы
http://localhost:8000/v1/chat/completions
Ввод/вывод
# Input:
_____
{
" message " : " Hi, Who are you? " ,
" stream " : true
}
--------------------
# Output:
_____
{
I am a Chatbot assistant :)
}
--------------------
# Response Output:
_____
# Streaming
" String "
# Not Streaming
" String "
Сначала перейдите в каталог пользовательского интерфейса:
cd WebAI-to-API/webai2api/UI
npm install
npm run build
После того, как вы запустили веб-сервер с помощью python webai2apirun.py
:
Примечание
Примечание. Первый аргумент для запуска примера определяет, следует ли возвращать потоковую передачу или нет.
cd examples/
python WebAPI-to-API/webai2api/test.py
OR
python example_claude.py false
python example_claude.py true
python example_gemini.py
или попробуйте Клода с cURL
запустите эту команду cURL в окне терминала:
curl -X ' POST '
' http://localhost:8000/claude '
-H ' accept: application/json '
-H ' Content-Type: application/json '
-d ' {
"message": "who are you?",
"stream": false
} '
Примечание
Примечание . session_id
настраивается в файле Config.conf . Если вы отправите эту переменную пустой, она будет использовать файл Config.conf.
Примечание
Примечание . Claude и Gemini предлагают два варианта аутентификации: вы можете либо войти в систему через браузер и пропустить этот шаг, либо следовать инструкциям ниже, чтобы настроить аутентификацию.
Важный
«Проблема с автоматическим входом в браузер через браузер вызвана использованием нескольких учетных записей или профилей браузера. Полное решение займет некоторое время. Эта проблема будет устранена в будущем обновлении. На данный момент, если у вас возникли проблемы со входом в систему через браузеры, попробуйте войти в систему с помощью используйте только один браузер или вручную скопируйте сеансы и файлы cookie в качестве обходного пути, как описано в инструкциях ниже».
Самый простой способ — просто войти на сайты чат-ботов. (Клод | Близнецы)
ИЛИ
Сначала вам нужно добавить свои токены в файл Config.conf
(см. раздел «Конфигурация» ).
Метод 1:
Для Gemini все, что вам нужно сделать, это войти в свою учетную запись с помощью веб-браузера. (Firefox, Chrome, Safari, Edge...)
Метод 2:
Google Gemini:
получите упомянутые здесь файлы cookie во время авторизованного сеанса на сайте Gemini.google.com. Файлы cookie можно использовать для отправки запросов POST в конечную точку /gemini вместе с сообщением в полезной нагрузке JSON. Важно, чтобы в запрос были включены session_id , который является вашим файлом cookie __Secure-1PSID , а также session_idts и session_idcc , который является вашим файлом cookie Secure-1PSIDTS и Secure-1PSIDCC . (Скриншот)
Имя | Имя сеанса |
---|---|
session_id | __Secure-1PSID |
session_idts | __Secure-1PSIDTS |
session_idcc | __Secure-1PSIDCC |
Developer Tools
(нажмите F12 )Application Tab
Cookies Tab
__Secure-1PSID
, __Secure-1PSIDTS
и __Secure-1PSIDCC
. Скопируйте значение этих файлов cookie. Метод 1:
Для Клода все, что вам нужно сделать, это войти в свою учетную запись с помощью веб-браузера. (Firefox, Chrome, Safari, Edge...)
Метод 2:
Claude:
Вы можете получить файлы cookie на вкладке сети инструментов разработчика браузера (см. все запросы claude.ai, проверьте файлы cookie, скопируйте все значение) или на вкладке хранилища (вы можете найти файлы cookie на claude.ai, там будет четыре значения) (Снимок экрана) )
Developer Tools
(нажмите F12 )Network Tab
Cookie
Как найти жетоны
Примечание
Примечание . В Claude и Gemini предусмотрены варианты автоматического входа: вход в систему через браузер или настройка Claude и Gemini с использованием предоставленного файла конфигурации.
/v1/chat/completions
Вы можете указать тип модели в настройках конечной точки /v1/chat/completions
. Доступные варианты: «Клод» и «Близнецы». По умолчанию система использует модель «Клод».
# Case-Sensitive
[Main]
Model=Claude
# or
Model=Gemini
# Case-Sensitive
[Main]
Model = [Claude] or [Gemini]
[Claude]
COOKIE=[YOURS]
[Gemini]
SESSION_ID=[YOURS]
SESSION_IDTS=[YOURS]
SESSION_IDCC=[YOURS]
Этот проект лицензируется по лицензии MIT. Не стесняйтесь использовать его, как вам нравится.