Zum Inhalt springen
InfercomInfercomInfercom Documentation

Funktionen

OpenAI-kompatible Funktionen implementieren - Entwicklerhandbuch

OpenAI-Clientbibliotheken mit der Infercom API nutzen. Drop-in-kompatibel — nur Basis-URL und API-Schlüssel ändern für EU-souveräne Inferenz.

Die Infercom KI-Inferenz-APIs sind für die Kompatibilität mit OpenAI-Client-Bibliotheken konzipiert, um die Einführung unserer Inferenz-Technologien zur Verbesserung Ihrer KI-Anwendungen zu vereinfachen.

Führen Sie den folgenden Befehl aus, um die Bibliothek herunterzuladen.

pip install openai

Infercom APIs mit OpenAI-Client-Bibliotheken verwenden

Abschnitt betitelt „Infercom APIs mit OpenAI-Client-Bibliotheken verwenden“

Die Konfiguration Ihrer OpenAI-Client-Bibliotheken für die Verwendung der Infercom KI-Inferenz-APIs ist so einfach wie das Festlegen von zwei Werten: der base_url und Ihres api_key, wie unten dargestellt.

from openai import OpenAI
client = OpenAI(
base_url="https://api.infercom.ai/v1",
api_key="ihr-infercom-api-schluessel"
)

Jetzt können Sie eine API-Anfrage an ein Modell stellen und wählen, wie Sie Ihre Ausgabe erhalten möchten.

Der folgende Code demonstriert die Verwendung des OpenAI Python-Clients für Vervollständigungen ohne Streaming.

completion = client.chat.completions.create(
model="Meta-Llama-3.1-8B-Instruct",
messages = [
{"role": "system", "content": "Beantworte die Frage in ein paar Sätzen."},
{"role": "user", "content": "Erzähle mir eine fröhliche Geschichte"}
]
)
print(completion.choices[0].message)

Der folgende Code demonstriert die Verwendung des OpenAI Python-Clients für Vervollständigungen mit Streaming.

completion = client.chat.completions.create(
model="Meta-Llama-3.1-8B-Instruct",
messages = [
{"role": "system", "content": "Beantworte die Frage in ein paar Sätzen."},
{"role": "user", "content": "Erzähle mir eine fröhliche Geschichte"}
],
stream= True
)
for chunk in completion:
print(chunk.choices[0].delta.content)

Zwei OpenAI-Parameter werden aus Gründen der API-Kompatibilität akzeptiert und haben bei keinem Modell eine Wirkung:

  • presence_penalty
  • frequency_penalty

Verwenden Sie stattdessen repetition_penalty, um Wiederholungen zu steuern.

Diese Parameter funktionieren. Welche Modelle sie anwenden, ist unterschiedlich. Prüfen Sie daher die Tabelle, bevor Sie sich auf einen verlassen.

Parameter Wird angewendet auf Ohne Wirkung auf Anfrage schlägt fehl bei
n Jedes Modell - -
logprobs, top_logprobs Jedes Modell außer MiniMax-M3 MiniMax-M3 -
logit_bias gpt-oss-120b gemma-4-31B-it DeepSeek-V3.1, DeepSeek-V3.2, Meta-Llama-3.3-70B-Instruct, MiniMax-M3
seed gpt-oss-120b, DeepSeek-V3.1, DeepSeek-V3.2, Meta-Llama-3.3-70B-Instruct gemma-4-31B-it, MiniMax-M3 -
repetition_penalty gpt-oss-120b, gemma-4-31B-it DeepSeek-V3.1, DeepSeek-V3.2, Meta-Llama-3.3-70B-Instruct MiniMax-M3, bei jedem Wert außer 1.0

Gemessen auf /v1/chat/completions. Eine fehlschlagende Anfrage liefert HTTP 500, außer logit_bias bei MiniMax-M3, das HTTP 400 liefert. Die OpenAI-SDKs wiederholen einen 500 zweimal. Senden Sie diese Parameter daher nicht an diese Modelle.

temperature: Die Infercom API akzeptiert Werte zwischen 0 und 2, denselben Bereich wie OpenAI. Werte über 2 werden mit einem 400 abgelehnt. Anders als OpenAI wendet die Infercom API keinen Standardwert an. Ohne temperature dekodieren die meisten Modelle greedy, was sich wie temperature 0 verhält. Setzen Sie den Parameter bei jeder Anfrage. Siehe Wenn Sie temperature weglassen.

Infercom API-Funktionen, die von OpenAI-Clients nicht unterstützt werden

Abschnitt betitelt „Infercom API-Funktionen, die von OpenAI-Clients nicht unterstützt werden“

Die Infercom API unterstützt zwei Parameter, die die OpenAI-Client-Bibliotheken nicht kennen:

  • top_k - beschränkt das Sampling auf die K wahrscheinlichsten Token. Der Parameter hat keine Wirkung, solange temperature nicht mindestens 0.001 beträgt. Siehe Wie top_k mit temperature zusammenwirkt.
  • repetition_penalty - die einzige Wiederholungskontrolle, die diese API anwendet. Der Parameter bestraft auch Token, die in Ihrem Prompt vorkommen. Ein langer System-Prompt kann daher Wörter unterdrücken, auf die der Prompt selbst angewiesen ist. Er ist kein direkter Ersatz für frequency_penalty, das akzeptiert und ignoriert wird. Der zulässige Bereich ist 1 bis 2. Setzen Sie zuerst ein passendes temperature und halten Sie repetition_penalty dann bei höchstens 1.2. Nur auf /v1/chat/completions wirksam.

Die OpenAI-SDKs lehnen unbekannte Top-Level-Argumente ab. Senden Sie beide daher über extra_body.

response = client.chat.completions.create(
model="gpt-oss-120b",
messages=[{"role": "user", "content": "..."}],
temperature=1.0,
extra_body={"top_k": 40, "repetition_penalty": 1.05},
)