4.9 KiB
4.9 KiB
LangDoc Connector
Der LangDoc Connector ermöglicht die Integration der LangDoc API in das PowerOn Gateway System. LangDoc ist eine OpenAI-kompatible API, die verschiedene KI-Modelle bereitstellt.
Konfiguration
Umgebungsvariablen
Die folgenden Konfigurationsparameter müssen in den entsprechenden Umgebungsdateien gesetzt werden:
# LangDoc configuration
Connector_AiLangdoc_API_URL = https://api.langdock.com/v1/chat/completions
Connector_AiLangdoc_API_SECRET = YOUR_LANGDOC_API_KEY_HERE
Connector_AiLangdoc_MODEL_NAME = gpt-4o
Connector_AiLangdoc_TEMPERATURE = 0.2
API-Schlüssel erhalten
- Melden Sie sich bei Ihrem LangDoc-Konto an
- Navigieren Sie zu den API-Einstellungen
- Generieren Sie einen neuen API-Schlüssel
- Benennen Sie den Schlüssel entsprechend und speichern Sie ihn sicher
Verfügbare Funktionen
1. Textgenerierung (callAiBasic)
from modules.connectors.connectorAiLangdoc import AiLangdoc
# Connector initialisieren
langdoc = AiLangdoc()
# Nachrichten für die API vorbereiten
messages = [
{"role": "user", "content": "Erkläre mir die Grundlagen von Machine Learning"}
]
# API aufrufen
response = await langdoc.callAiBasic(messages)
print(response)
Parameter:
messages: Liste von Nachrichten im OpenAI-Format (role, content)temperature: Temperatur für die Antwortgenerierung (0.0-1.0, optional)maxTokens: Maximale Anzahl der Tokens in der Antwort (optional)
2. Bildanalyse (callAiImage)
# Bildanalyse mit LangDoc Vision
prompt = "Beschreibe was du auf diesem Bild siehst"
image_path = "/path/to/image.jpg"
response = await langdoc.callAiImage(prompt, image_path)
print(response)
Parameter:
prompt: Prompt für die BildanalyseimageData: Dateipfad (str) oder Bilddaten (bytes)mimeType: MIME-Typ des Bildes (optional)
3. Verfügbare Modelle auflisten (listModels)
# Alle verfügbaren Modelle auflisten
models = await langdoc.listModels()
for model in models:
print(f"Model: {model['id']}")
4. Modellinformationen abrufen (getModelInfo)
# Informationen zu einem spezifischen Modell
model_info = await langdoc.getModelInfo("gpt-4o")
print(f"Model Details: {model_info}")
5. Verbindung testen (_testConnection)
# Verbindung zur LangDoc API testen
is_connected = await langdoc._testConnection()
if is_connected:
print("Verbindung erfolgreich!")
else:
print("Verbindung fehlgeschlagen!")
Unterstützte Modelle
LangDoc unterstützt verschiedene KI-Modelle, darunter:
- GPT-4o: Neuestes OpenAI-Modell mit Vision-Fähigkeiten
- GPT-4: Hochleistungsmodell für komplexe Aufgaben
- GPT-3.5-turbo: Schnelles und kosteneffizientes Modell
- Claude 3.5 Sonnet: Anthropic-Modell über LangDoc
- Gemini Pro: Google-Modell über LangDoc
Verwendung in Workflows
Der LangDoc Connector kann in PowerOn Workflows verwendet werden:
# Beispiel für Workflow-Integration
async def processWithLangDoc(workflow_data):
langdoc = AiLangdoc()
# Textverarbeitung
messages = [
{"role": "system", "content": "Du bist ein hilfreicher Assistent."},
{"role": "user", "content": workflow_data.get("user_input")}
]
result = await langdoc.callAiBasic(messages)
return {"ai_response": result}
Fehlerbehandlung
Der Connector behandelt verschiedene Fehlertypen:
- 401 Unauthorized: Ungültiger API-Schlüssel
- 429 Too Many Requests: Rate Limit überschritten
- 400 Bad Request: Ungültige Anfrage
- 500 Internal Server Error: Server-seitige Fehler
Sicherheitshinweise
- API-Schlüssel sicher aufbewahren: Verwenden Sie die Verschlüsselungsfunktionen des Systems
- Rate Limits beachten: LangDoc hat eigene Rate Limits
- Datenvalidierung: Validiere alle Eingaben vor dem API-Aufruf
- Logging: Alle API-Aufrufe werden geloggt für Debugging und Monitoring
Beispiel-Anwendungsfälle
1. Dokumentenanalyse
# Analyse von Dokumenten
messages = [
{"role": "user", "content": f"Analysiere dieses Dokument: {document_text}"}
]
analysis = await langdoc.callAiBasic(messages)
2. Code-Generierung
# Code-Generierung
messages = [
{"role": "user", "content": "Schreibe eine Python-Funktion für die Berechnung von Fibonacci-Zahlen"}
]
code = await langdoc.callAiBasic(messages)
3. Übersetzung
# Textübersetzung
messages = [
{"role": "user", "content": f"Übersetze folgenden Text ins Englische: {german_text}"}
]
translation = await langdoc.callAiBasic(messages)
4. Zusammenfassung
# Textzusammenfassung
messages = [
{"role": "user", "content": f"Fasse folgenden Text zusammen: {long_text}"}
]
summary = await langdoc.callAiBasic(messages)
Support und Dokumentation
- LangDoc API Dokumentation: https://docs.langdock.com/
- LangDoc Website: https://www.langdock.com/
- PowerOn Gateway Dokumentation: Siehe README.md im Hauptverzeichnis