Verwenden von Azure OpenAI in Fabric mit Python SDK und Synapse ML (Vorschau)
Wichtig
Dieses Feature befindet sich in der Vorschau.
In diesem Artikel finden Sie Beispiele für die Verwendung von Azure OpenAI in Fabric mit OpenAI Python SDK und mit SynapseML.
Voraussetzungen
OpenAI Python SDK ist nicht in der Standard-Laufzeitumgebung installiert, Sie müssen es zuerst installieren.
%pip install openai==0.28.1
Chat
ChatGPT und GPT-4 sind Sprachmodelle, die für Unterhaltungsschnittstellen optimiert sind. Das hier vorgestellte Beispiel zeigt einfache Vorgänge beim Vervollständigen von Chats und soll nicht als Tutorial dienen.
import openai
response = openai.ChatCompletion.create(
deployment_id='gpt-35-turbo-0125', # deployment_id could be one of {gpt-35-turbo-0125 or gpt-4-32k}
messages=[
{"role": "system", "content": "You are a helpful assistant."},
{"role": "user", "content": "Knock knock."},
{"role": "assistant", "content": "Who's there?"},
{"role": "user", "content": "Orange."},
],
temperature=0,
)
print(f"{response.choices[0].message.role}: {response.choices[0].message.content}")
Ausgabe
assistant: Orange who?
Wir können die Antwort auch streamen
response = openai.ChatCompletion.create(
deployment_id='gpt-35-turbo-0125', # deployment_id could be one of {gpt-35-turbo-0125 or gpt-4-32k}
messages=[
{"role": "system", "content": "You are a helpful assistant."},
{"role": "user", "content": "Knock knock."},
{"role": "assistant", "content": "Who's there?"},
{"role": "user", "content": "Orange."},
],
temperature=0,
stream=True
)
for chunk in response:
delta = chunk.choices[0].delta
if "role" in delta.keys():
print(delta.role + ": ", end="", flush=True)
if "content" in delta.keys():
print(delta.content, end="", flush=True)
Output
assistant: Orange who?
Einbettungen
Eine Einbettung ist ein spezielles Format der Datendarstellung, das problemlos von Machine Learning-Modellen und -Algorithmen genutzt werden kann. Sie enthält eine informationsreiche semantische Bedeutung eines Texts, die durch einen Vektor von Gleitkommazahlen dargestellt wird. Der Abstand zwischen zwei Einbettungen im Vektorraum hängt mit der semantischen Ähnlichkeit zwischen zwei ursprünglichen Eingaben zusammen. Wenn beispielsweise zwei Texte semantisch sehr ähnlich sind, sollten auch ihre Vektordarstellungen nahe zueinander liegen.
Das hier vorgestellte Beispiel zeigt, wie man Einbettungen erhält, und ist nicht als Tutorial gedacht.
deployment_id = "text-embedding-ada-002" # set deployment_name as text-embedding-ada-002
embeddings = openai.Embedding.create(deployment_id=deployment_id,
input="The food was delicious and the waiter...")
print(embeddings)
Output
{
"object": "list",
"data": [
{
"object": "embedding",
"index": 0,
"embedding": [
0.002306425478309393,
-0.009327292442321777,
0.015797346830368042,
...
0.014552861452102661,
0.010463837534189224,
-0.015327490866184235,
-0.01937841810286045,
-0.0028842221945524216
]
}
],
"model": "ada",
"usage": {
"prompt_tokens": 8,
"total_tokens": 8
}
}
Zugehöriger Inhalt
- Verwenden vordefinierter Textanalysen in Fabric mit REST-API
- Verwenden vordefinierter Textanalysen in Fabric mit SynapseML
- Verwenden des vorkonfigurierten Azure KI Translator in Fabric mit REST-API
- Verwenden des vorkonfigurierten Azure KI Translator in Fabric mit SynapseML
- Verwenden vordefinierter Azure OpenAI in Fabric mit REST-API
- Verwenden vordefinierter Azure OpenAI in Fabric mit SynapseML und Python SDK