Zugang aus Übersee: www.kdjingpai.com
Ctrl + D Lesezeichen für diese Seite

Any-LLM ist eine Open-Source-Python-Bibliothek, die vom Mozilla AI-Team entwickelt wurde, um verschiedene Large Language Model (LLM)-Anbieter wie OpenAI, Mistral und Anthropic über eine einzige Schnittstelle aufzurufen. Sie vereinfacht die Komplexität des Wechsels zwischen den Modellen für Entwickler, indem sie die Einrichtung zusätzlicher Proxys oder Gateway-Server überflüssig macht. any-LLM verwendet das offizielle SDK, um Kompatibilität und Wartungssicherheit zu gewährleisten, und ist gleichzeitig Framework-agnostisch und für eine breite Palette von Projektszenarien geeignet. LLM nutzt das offizielle SDK, um Kompatibilität und Wartungssicherheit zu gewährleisten, während es gleichzeitig Framework-agnostisch bleibt und für eine breite Palette von Projektszenarien geeignet ist. Entwickler müssen lediglich API-Schlüssel oder Modellparameter konfigurieren, um schnell verschiedene Modelle aufzurufen, Text zu erzeugen oder Dialoge zu führen. Das Projekt wird aktiv gepflegt und ist in Mozillas Produkt any-agent für Entwickler, die Sprachmodelle flexibel testen und integrieren müssen, weit verbreitet.

Funktionsliste

  • Einheitliche Schnittstelle: Rufen Sie mehrere LLM-Anbieter über eine einzige API auf, die OpenAI, Mistral, Anthropic und andere unterstützt.
  • Offizielle SDK-Unterstützung: Vorrangig wird das offizielle SDK des Anbieters verwendet, um den Wartungsaufwand zu verringern und Kompatibilität zu gewährleisten.
  • Keine Proxy-Abhängigkeit: Es ist nicht notwendig, einen Proxy- oder Gateway-Server einzurichten, um direkt mit dem LLM-Anbieter zu kommunizieren.
  • Framework-agnostisch: Kompatibel mit jedem Entwicklungsframework, geeignet für unterschiedliche Projektanforderungen.
  • Kompatibilität mit OpenAI-Formaten: Die Antwortformate folgen den OpenAI-API-Standards für eine einfache Integration und Migration.
  • Flexible Konfiguration: Unterstützt die Einstellung von API-Schlüsseln direkt über Umgebungsvariablen oder Parameter und vereinfacht so den Betrieb.
  • Modellwechsel: Einfacher Wechsel zwischen Modellen verschiedener Anbieter, geeignet zum Testen und Vergleichen der Modellleistung.

Hilfe verwenden

Einbauverfahren

Um Any-LLM zu verwenden, müssen Sie zunächst Python installieren (empfohlene Version 3.11 oder höher). Hier sind die detaillierten Installationsschritte:

  1. Installation der Any-LLM-Bibliothek
    Führen Sie den folgenden Befehl in einem Terminal aus, um Any-LLM und seine Abhängigkeiten zu installieren:

    pip install any-llm
    

    Wenn Unterstützung für einen bestimmten Anbieter erforderlich ist (z. B. Mistral oder Anthropic), können Sie das entsprechende Modul installieren:

    pip install any-llm[mistral,anthropic]
    

    Oder installieren Sie alle unterstützten Anbieter:

    pip install any-llm[all]
    
  2. API-Schlüssel konfigurieren
    Any-LLM benötigt den API-Schlüssel des Anbieters. Es kann auf eine der beiden folgenden Arten konfiguriert werden:

    • UmgebungsvariableSpeichern Sie den Schlüssel in einer Umgebungsvariablen, zum Beispiel:
      export MISTRAL_API_KEY='your_mistral_api_key'
      export OPENAI_API_KEY='your_openai_api_key'
      
    • Einstellung im CodeDirekt auf den Anruf übergeben api_key Parameter (nicht empfohlen, weniger sicher).
      Stellen Sie sicher, dass der Schlüssel gültig ist, sonst schlägt der Aufruf fehl.
  3. Überprüfen der Installation
    Sobald die Installation abgeschlossen ist, können Sie den folgenden Befehl ausführen, um den Erfolg zu überprüfen:

    python -c "import any_llm; print(any_llm.__version__)"
    

    Wenn die Versionsnummer ausgegeben wird, war die Installation erfolgreich.

Hauptfunktionen

Die Kernfunktionalität von Any-LLM besteht darin, Modelle von verschiedenen LLM-Anbietern über eine einheitliche Schnittstelle aufzurufen, um Texte zu erzeugen oder Dialoge zu führen. So funktioniert es:

1. grundlegende Texterstellung

Any-LLM bietet completion Funktion zum Erzeugen von Text. Es folgt ein Beispiel für einen Aufruf eines Mistral-Modells:

from any_llm import completion
import os
# 确保已设置环境变量
assert os.environ.get('MISTRAL_API_KEY')
# 调用 Mistral 模型
response = completion(
model="mistral/mistral-small-latest",
messages=[{"role": "user", "content": "你好!请介绍一下 Python 的优势。"}]
)
print(response.choices[0].message.content)
  • Beschreibung der Parameter::
    • model: das Format ist <provider_id>/<model_id>z.B.. mistral/mistral-small-latest.
    • messages: eine Liste von Dialoginhalten, die Folgendes enthält role(Rollen wie user vielleicht assistantund content(Inhalt der Nachricht).
  • AusfuhrenDer vom Modell zurückgegebene Text wird in der Datei response.choices[0].message.content Mitte.

2. der Wechsel des Modellanbieters

Any-LLM unterstützt den einfachen Wechsel von Modellen im Code. Zum Beispiel der Wechsel zu einem OpenAI-Modell:

response = completion(
model="openai/gpt-3.5-turbo",
messages=[{"role": "user", "content": "什么是机器学习?"}],
api_key="your_openai_api_key"  # 可选,直接传递密钥
)
print(response.choices[0].message.content)

Ändern Sie einfach die model ohne andere Codestrukturen zu ändern.

3. erweiterte Parameter konfigurieren

Das Any-LLM ermöglicht die Einstellung der Temperatur (temperature), max. Token Nummer (max_tokens) und andere Parameter, um den Stil und die Länge des generierten Textes zu steuern. Beispiel:

response = completion(
model="anthropic/claude-3-sonnet",
messages=[{"role": "user", "content": "写一首短诗"}],
temperature=0.7,
max_tokens=100
)
print(response.choices[0].message.content)
  • TemperaturLegt die Zufälligkeit des generierten Textes fest; je niedriger der Wert, desto deterministischer ist er (Standardwert 1.0).
  • max_tokensBegrenzung der Ausgabelänge, um zu lange Antworten zu vermeiden.

4. die Fehlerbehandlung

Any-LLM löst eine Ausnahme aus, wenn der API-Schlüssel ungültig ist oder das Modell nicht verfügbar ist. Es wird empfohlen, den try-except Fangen Sie Fehler:

try:
response = completion(
model="mistral/mistral-small-latest",
messages=[{"role": "user", "content": "你好!"}]
)
print(response.choices[0].message.content)
except Exception as e:
print(f"错误:{e}")

Featured Function Bedienung

1) Modellvergleich und -prüfung

Der größte Vorteil von Any-LLM ist, dass es einen schnellen Modellwechsel unterstützt, was für Entwickler geeignet ist, um die Leistung verschiedener Modelle zu vergleichen. Zum Beispiel, um den Unterschied in den Antworten zwischen Mistral und OpenAI zu testen:

models = ["mistral/mistral-small-latest", "openai/gpt-3.5-turbo"]
question = "解释量子计算的基本原理"
for model in models:
response = completion(
model=model,
messages=[{"role": "user", "content": question}]
)
print(f"{model} 的回答:{response.choices[0].message.content}")

Dies hilft dem Entwickler bei der Auswahl des am besten geeigneten Modells für eine bestimmte Aufgabe.

2. die Integration in bestehende Projekte

Die Framework-unabhängige Natur von Any-LLM macht es einfach, es in Web-Anwendungen, Kommandozeilen-Tools oder Datenanalyse-Skripte zu integrieren. Zum Beispiel die Integration in eine Flask-Anwendung:

from flask import Flask, request
from any_llm import completion
app = Flask(__name__)
@app.route('/chat', methods=['POST'])
def chat():
data = request.json
response = completion(
model=data.get('model', 'mistral/mistral-small-latest'),
messages=[{"role": "user", "content": data['message']}]
)
return {"response": response.choices[0].message.content}
if __name__ == '__main__':
app.run()

Mit diesem Code wird eine einfache Chat-API erstellt, die Benutzereingaben entgegennimmt und eine von einem Modell generierte Antwort zurückgibt.

caveat

  • API-Schlüssel-SicherheitVermeiden Sie das Festschreiben von Schlüsseln in Ihrem Code und verwenden Sie lieber Umgebungsvariablen.
  • NetzanschlussAny-LLM benötigt eine Netzverbindung, um das Cloud-Modell aufzurufen und die Netzstabilität zu gewährleisten.
  • Modell-UnterstützungModelle und Parameter, die von verschiedenen Anbietern unterstützt werden, können variieren, siehe offizielle Dokumentation.
  • LeistungsoptimierungBei hochfrequenten Aufrufen wird empfohlen, Anfragen in Stapeln zu verarbeiten, um den API-Overhead zu reduzieren.

Anwendungsszenario

  1. Schnelles Prototyping
    Entwickler können Any-LLM verwenden, um die Leistung verschiedener LLMs bei bestimmten Aufgaben wie Texterstellung, Fragen und Antworten oder Übersetzung schnell zu testen und so den Entwicklungszyklus zu verkürzen.
  2. Vergleich der Modellleistung
    Datenwissenschaftler oder KI-Forscher können Any-LLM verwenden, um die Qualität der Ergebnisse mehrerer Modelle für dieselbe Aufgabe zu vergleichen und das optimale Modell auszuwählen.
  3. Bildung und Lernen
    Mit Any-LLM können Studenten oder Anfänger die Möglichkeiten verschiedener LLMs erleben und lernen, wie die Modelle funktionieren und wie die API-Aufrufe erfolgen.
  4. Integration von Unternehmensanwendungen
    Unternehmen können Any-LLMCHF integrieren

M-Modelle werden in Geschäftssysteme integriert, um schnell KI-gesteuerte Funktionen wie intelligenten Kundenservice oder Tools zur Inhaltserstellung zu entwickeln.

QA

  1. Welche Sprachmodelle werden von Any-LLM unterstützt?
    Unterstützt Modelle von großen Anbietern wie OpenAI, Mistral, Anthropic usw. Spezifische Modelle entnehmen Sie bitte der Dokumentation des Anbieters.
  2. Ist eine zusätzliche Servereinrichtung erforderlich?
    Nein, Any-LLM wird direkt aus dem offiziellen SDK aufgerufen, es werden keine Proxys oder Gateway-Server benötigt.
  3. Wie werden API-Schlüssel gehandhabt?
    Es wird empfohlen, den Schlüssel über eine Umgebungsvariable zu setzen, oder Sie können den Schlüssel in der Datei completion Wird direkt in der Funktion übergeben (nicht empfohlen).
  4. Unterstützt Any-LLM lokale Modelle?
    Die aktuelle Version unterstützt hauptsächlich Cloud-Modelle, die aus dem Internet aufgerufen werden müssen, während für die Unterstützung lokaler Modelle auf andere Tools wie llamafile zurückgegriffen werden muss.
  5. Wie lassen sich Fehler bei Aufrufen beheben?
    Überprüfen Sie, ob der API-Schlüssel, die Netzwerkverbindung und der Modellname korrekt sind, indem Sie den try-except Erfassen Sie Fehlermeldungen.
0Lesezeichen
0Gelobt

Empfohlen

Sie können keine AI-Tools finden? Versuchen Sie es hier!

Geben Sie einfach das Schlüsselwort Barrierefreiheit Bing-SucheDer Bereich KI-Tools auf dieser Website bietet eine schnelle und einfache Möglichkeit, alle KI-Tools auf dieser Website zu finden.

Posteingang

Kontakt

zurück zum Anfang

de_DEDeutsch