Catatan
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba masuk atau mengubah direktori.
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba mengubah direktori.
Microsoft Agent Framework mendukung beberapa jenis klien OpenAI. Dalam C#, ini mencakup Penyelesaian Obrolan, Respons, dan Asisten. Di Python, penyedia terdepan OpenAI memiliki fitur Penyelesaian Obrolan dan Respons.
| Tipe Klien | API | Terbaik untuk |
|---|---|---|
| Penyelesaian Percakapan | API Penyelesaian Obrolan | Agen sederhana, dukungan model luas |
| Responses | API Respons | Agen berfitur lengkap dengan alat yang dihosting (penerjemah kode, pencarian file, pencarian web, MCP yang dihosting) |
| Asisten | API Asisten | Agen yang dikelola server dengan penerjemah kode dan pencarian file |
Ketersediaan bahasa bervariasi. Python menggunakan klien Chat Completion dan Responses di halaman ini; cakupan Asistensi di bawah ini hanya untuk C#.
Memulai Langkah Awal
Tambahkan paket NuGet yang diperlukan ke proyek Anda.
dotnet add package Microsoft.Agents.AI.OpenAI --prerelease
Klien Penyelesaian Percakapan
Klien Penyelesaian Obrolan menyediakan cara mudah untuk membuat agen menggunakan ChatCompletion API.
using Microsoft.Agents.AI;
using OpenAI;
OpenAIClient client = new OpenAIClient("<your_api_key>");
var chatClient = client.GetChatClient("gpt-4o-mini");
AIAgent agent = chatClient.AsAIAgent(
instructions: "You are good at telling jokes.",
name: "Joker");
Console.WriteLine(await agent.RunAsync("Tell me a joke about a pirate."));
Alat yang didukung: Alat fungsi, pencarian web, alat MCP lokal.
Respons Klien
Klien Respons menyediakan dukungan alat terkaya termasuk penerjemah kode, pencarian file, pencarian web, dan MCP yang dihosting.
using Microsoft.Agents.AI;
using OpenAI;
OpenAIClient client = new OpenAIClient("<your_api_key>");
var responsesClient = client.GetResponseClient("gpt-4o-mini");
AIAgent agent = responsesClient.AsAIAgent(
instructions: "You are a helpful coding assistant.",
name: "CodeHelper");
Console.WriteLine(await agent.RunAsync("Write a Python function to sort a list."));
Alat yang didukung: Alat fungsi, persetujuan alat, penerjemah kode, pencarian file, pencarian web, MCP yang dihosting, alat MCP lokal.
Klien Asisten
Klien Asisten membuat agen yang dikelola server dengan penerjemah kode bawaan dan pencarian file.
using Microsoft.Agents.AI;
using OpenAI;
OpenAIClient client = new OpenAIClient("<your_api_key>");
var assistantsClient = client.GetAssistantClient();
// Assistants are managed server-side
AIAgent agent = assistantsClient.AsAIAgent(
instructions: "You are a data analysis assistant.",
name: "DataHelper");
Console.WriteLine(await agent.RunAsync("Analyze trends in the uploaded data."));
Alat yang didukung: Alat fungsi, penerjemah kode, pencarian file, alat MCP lokal.
Petunjuk / Saran
Lihat sampel .NET untuk contoh lengkap yang dapat dijalankan.
Menggunakan Agen
Ketiga jenis klien menghasilkan standar AIAgent yang mendukung operasi agen yang sama (streaming, utas, middleware).
Untuk informasi selengkapnya, lihat tutorial Memulai.
Petunjuk / Saran
Dalam Python, Azure OpenAI sekarang menggunakan klien yang sama agent_framework.openai ditampilkan di sini. Teruskan input perutean Azure eksplisit seperti credential atau azure_endpoint ketika Anda menginginkan perutean Azure, lalu tetapkan api_version untuk antarmuka API Azure yang ingin Anda gunakan. Jika OPENAI_API_KEY dikonfigurasi, klien generik tetap berada di OpenAI bahkan ketika AZURE_OPENAI_* variabel juga ada. Jika Anda sudah memiliki URL lengkap .../openai/v1 , gunakan base_url alih-alih azure_endpoint. Untuk titik akhir proyek Microsoft Foundry dan Foundry Agent Service, lihat halaman penyedia Microsoft Foundry. Untuk runtime lokal, lihat Foundry Local.
Penginstalan
pip install agent-framework-openai
agent-framework-openai adalah paket penyedia Python opsional untuk penggunaan OpenAI langsung dan Azure OpenAI.
Konfigurasi
Klien obrolan Python OpenAI menggunakan pola variabel lingkungan ini:
OPENAI_API_KEY="your-openai-api-key"
OPENAI_CHAT_COMPLETION_MODEL="gpt-4o-mini"
# Optional shared fallback:
# OPENAI_MODEL="gpt-4o-mini"
Fitur Umum
Jenis klien ini mendukung fitur agen standar ini:
Perangkat Fungsional
from agent_framework import tool
@tool
def get_weather(location: str) -> str:
"""Get the weather for a given location."""
return f"The weather in {location} is sunny, 25°C."
async def example():
agent = OpenAIChatClient().as_agent(
instructions="You are a weather assistant.",
tools=get_weather,
)
result = await agent.run("What's the weather in Tokyo?")
print(result)
Percakapan dengan Banyak Putaran
async def thread_example():
agent = OpenAIChatClient().as_agent(
instructions="You are a helpful assistant.",
)
session = await agent.create_session()
result1 = await agent.run("My name is Alice", session=session)
print(result1)
result2 = await agent.run("What's my name?", session=session)
print(result2) # Remembers "Alice"
Siaran Langsung
async def streaming_example():
agent = OpenAIChatClient().as_agent(
instructions="You are a creative storyteller.",
)
print("Agent: ", end="", flush=True)
async for chunk in agent.run("Tell me a short story about AI.", stream=True):
if chunk.text:
print(chunk.text, end="", flush=True)
print()
Menggunakan Agen
Semua jenis klien menghasilkan standar Agent yang mendukung operasi yang sama.
Untuk informasi selengkapnya, lihat tutorial Memulai.