HINWEIS: Dies ist ein Forschungsprojekt. Bitte verwenden Sie es nicht kommerziell und gehen Sie verantwortungsvoll damit um.
Dieses Projekt implementiert eine Web-API, die eine einheitliche Schnittstelle zu Google Gemini und Claude 3 bietet.
Selbstgehostet: Python/FastAPI ermöglicht die Flexibilität, überall ausgeführt zu werden. Nicht an proprietäre Plattformen gebunden.
Streaming-Unterstützung: Echtzeit-Antworten von Claude Streaming.
Leicht und skalierbar: Gebaut mit FastAPI für hohe Leistung.
API-Schlüssel: Kein API-Schlüssel erforderlich.
✅ Die Claude-3 -API-Integration ist ebenfalls vollständig implementiert und verfügbar
✅ Google Gemini API-Integration jetzt verfügbar
✅ UI-Konfiguration : Routing für den Pfad localhost:8000/WebAI implementieren
PIP : In Bearbeitung
Dieses Repository ist aktuell.
Bitte vergessen Sie nicht, einen Stern zu vergeben
Python-Version >= 3.10 Konten auf den folgenden (alle bieten kostenlose Anmeldungen):
Fügen Sie dann Ihre(n) Token zur Datei Config.conf
hinzu. (siehe Abschnitt Konfiguration ).
Notiz
Hinweis : Claude und Gemini bieten Optionen für die automatische Anmeldung. Sie können sich entweder über Ihren Browser anmelden und diesen Schritt überspringen.
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
Navigieren Sie in das Verzeichnis webai2api
und führen Sie den Webserver aus:
cd WebAI-to-API/webai2api/
python run.py
Jetzt sollten die API-Dokumentation und die Konfigurations-Web-UI unter den folgenden Adressen verfügbar sein:
Tipp
Öffnen Sie die Web-UI-Konfiguration: http://localhost:8000/WebAI
Öffnen Sie die API-Dokumentation: http://localhost:8000/docs
Notiz
Zwillinge
http://localhost:8000/gemini
Claude
http://localhost:8000/claude
Claude/Zwillinge
http://localhost:8000/v1/chat/completions
Eingabe / Ausgabe
# Input:
_____
{
" message " : " Hi, Who are you? " ,
" stream " : true
}
--------------------
# Output:
_____
{
I am a Chatbot assistant :)
}
--------------------
# Response Output:
_____
# Streaming
" String "
# Not Streaming
" String "
Navigieren Sie zunächst zum UI-Verzeichnis:
cd WebAI-to-API/webai2api/UI
npm install
npm run build
Sobald Sie den Webserver mit python webai2apirun.py
gestartet haben:
Notiz
Hinweis: Das erste Argument zum Ausführen des Beispiels bestimmt, ob Streaming zurückgegeben werden soll oder nicht.
cd examples/
python WebAPI-to-API/webai2api/test.py
OR
python example_claude.py false
python example_claude.py true
python example_gemini.py
oder versuchen Sie es mit Claude mit cURL
Führen Sie diesen cURL-Befehl in einem Terminalfenster aus:
curl -X ' POST '
' http://localhost:8000/claude '
-H ' accept: application/json '
-H ' Content-Type: application/json '
-d ' {
"message": "who are you?",
"stream": false
} '
Notiz
Hinweis : Die session_id
wird in der Datei Config.conf konfiguriert. Wenn Sie diese Variable leer senden, wird die Config.conf verwendet
Notiz
Hinweis : Claude und Gemini bieten zwei Authentifizierungsoptionen: Sie können sich entweder über Ihren Browser anmelden und diesen Schritt überspringen, oder Sie können den Anweisungen unten folgen, um die Authentifizierung zu konfigurieren.
Wichtig
„Das Problem mit der automatischen Anmeldung per Browser wird durch die Verwendung mehrerer Konten oder Browserprofile verursacht. Es wird einige Zeit dauern, bis es vollständig behoben ist. Ein zukünftiges Update wird das Problem beheben. Wenn Sie vorerst Probleme bei der Anmeldung mit Ihren Browsern haben, versuchen Sie, sich mit anzumelden.“ Nur einen Browser oder kopieren Sie Sitzungen und Cookies manuell als Problemumgehung, wie in den Anweisungen unten beschrieben.
Am einfachsten ist es, sich einfach bei den Chatbot-Websites anzumelden. (Claude | Zwillinge)
ODER
Zuerst müssen Sie Ihre Token zur Datei Config.conf
hinzufügen (siehe Abschnitt „Konfiguration“ ).
Methode 1:
Für Gemini müssen Sie sich lediglich mit Ihrem Webbrowser bei Ihrem Konto anmelden. (Firefox, Chrome, Safari, Edge...)
Methode 2:
Google Gemini:
Bitte beziehen Sie die hier genannten Cookies aus einer autorisierten Sitzung auf gemini.google.com. Die Cookies können verwendet werden, um POST-Anfragen zusammen mit einer Nachricht in einer JSON-Nutzlast an den /gemini-Endpunkt zu senden. Es ist wichtig, dass session_id , das Ihr __Secure-1PSID- Cookie ist, und session_idts und session_idcc , das Ihr Secure-1PSIDTS- und Secure-1PSIDCC- Cookie ist, in der Anfrage enthalten sind. (Screenshot)
Name | Sitzungsname |
---|---|
session_id | __Secure-1PSID |
session_idts | __Secure-1PSIDTS |
session_idcc | __Secure-1PSIDCC |
Developer Tools
(drücken Sie F12 ).Application Tab
Cookies Tab
__Secure-1PSID
und __Secure-1PSIDTS
und __Secure-1PSIDCC
. Kopieren Sie den Wert dieser Cookies. Methode 1:
Für Claude müssen Sie sich lediglich mit Ihrem Webbrowser bei Ihrem Konto anmelden. (Firefox, Chrome, Safari, Edge...)
Methode 2:
Claude:
Sie können Cookies über die Netzwerk-Registerkarte der Entwicklertools des Browsers abrufen (für alle claude.ai-Anfragen siehe Cookie auschecken, gesamten Wert kopieren) oder über die Speicher-Registerkarte (Sie finden das Cookie von claude.ai, es gibt vier Werte) (Screenshot )
Developer Tools
(drücken Sie F12 ).Network Tab
Cookie
So finden Sie Token
Notiz
Hinweis : Claude und Gemini bieten Optionen für die automatische Anmeldung – Anmeldung über Ihren Browser oder Konfiguration von Claude und Gemini mithilfe der bereitgestellten Konfigurationsdatei.
/v1/chat/completions
Sie können den Modelltyp in den Einstellungen für den Endpunkt /v1/chat/completions
angeben. Die verfügbaren Optionen sind „Claude“ und „Gemini“. Standardmäßig verwendet das System das Modell „Claude“.
# 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]
Dieses Projekt ist unter der MIT-Lizenz lizenziert. Fühlen Sie sich frei, es zu verwenden, wie Sie möchten.