Použití Azure OpenAI v Prostředcích infrastruktury se sadou Python SDK a Synapse ML (Preview)
Důležité
Tato funkce je ve verzi Preview.
Tento článek ukazuje příklady použití Azure OpenAI v Prostředcích infrastruktury pomocí sady OpenAI Python SDK a synapseML.
Požadavky
Sada OpenAI Python SDK není nainstalovaná ve výchozím modulu runtime, musíte ji nejprve nainstalovat.
%pip install openai==0.28.1
Chat
ChatGPT a GPT-4 jsou jazykové modely optimalizované pro konverzační rozhraní. Zde uvedený příklad předvádí jednoduché operace dokončení chatu a není určen jako kurz.
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}")
Výstup
assistant: Orange who?
Odpověď můžeme také streamovat.
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)
Výstup
assistant: Orange who?
Vkládání
Vkládání je speciální formát reprezentace dat, který můžou snadno využívat modely a algoritmy strojového učení. Obsahuje sémantický význam textu s bohatými informacemi, reprezentovaný vektorem čísel s plovoucí desetinou čárkou. Vzdálenost mezi dvěma vkládáními ve vektorovém prostoru souvisí s sémantickou podobností mezi dvěma původními vstupy. Pokud jsou například dva texty podobné, měly by být jejich vektorové reprezentace podobné.
Tento příklad ukazuje, jak získat vkládání a není zamýšlený jako kurz.
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)
Výstup
{
"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
}
}
Související obsah
- Použití předem připravených Analýza textu v prostředcích infrastruktury s rozhraním REST API
- Použití předem připravených Analýza textu v prostředcích infrastruktury se službou SynapseML
- Použití předem připraveného služby Azure AI Translator v Prostředcích infrastruktury s rozhraním REST API
- Použití předem připraveného překladače Azure AI v Prostředcích infrastruktury se službou SynapseML
- Použití předem připraveného Azure OpenAI v prostředcích infrastruktury s rozhraním REST API
- Použití předem připravených Azure OpenAI v prostředcích infrastruktury se sadou SynapseML a Python SDK