إشعار
يتطلب الوصول إلى هذه الصفحة تخويلاً. يمكنك محاولة تسجيل الدخول أو تغيير الدلائل.
يتطلب الوصول إلى هذه الصفحة تخويلاً. يمكنك محاولة تغيير الدلائل.
يدعم Microsoft Agent Framework استنتاج النموذج المباشر من نقاط نهاية مشروع Microsoft Foundry بينما يمتلك تطبيقك تعريف العامل وأدواته وتنسيقه.
للحصول على المطالبة المدارة بواسطة الخدمة والوكلاء المستضافين، راجع Microsoft Foundry Agent Service.
الشروع في العمل
أضف حزم NuGet المطلوبة إلى مشروعك.
dotnet add package Azure.Identity
dotnet add package Microsoft.Agents.AI.Foundry --prerelease
نمطان للتكامل
يكشف تكامل Microsoft Foundry عن نمطين مميزين للاستخدام:
| النمط | النوع المنتج | Description | استخدم عندما |
|---|---|---|---|
| عامل الاستجابات | ChatClientAgent |
يوفر تطبيقك برمجيا نموذجا وتعليمات وأدوات في وقت التشغيل عبر AIProjectClient.AsAIAgent(...). لم يتم إنشاء مورد عامل من جانب الخادم. |
أنت تملك تعريف العامل وتريد إعدادا بسيطا ومرنا. هذا هو النمط المستخدم في معظم العينات. |
| عامل Foundry (موجه أو مستضاف) | FoundryAgent |
تتم تسمية عوامل المطالبة المدارة بواسطة الخادم والتعريفات التي تم إصدارها؛ يتم نشر العوامل المستضافة التطبيقات التي تم الوصول إليها من خلال نقطة نهاية خاصة بالعامل. | يمتلك Foundry تعريف العامل أو وقت التشغيل المستضاف. راجع Microsoft Foundry Agent Service. |
عامل الاستجابات (الاستدلال المباشر)
AIProjectClient استخدم AsAIAgent مباشرة مع نموذج وتعليمات. هذه هي نقطة البداية الموصى بها لمعظم السيناريوهات.
using Azure.AI.Projects;
using Azure.Identity;
using Microsoft.Agents.AI;
AIAgent agent = new AIProjectClient(
new Uri("<your-foundry-project-endpoint>"),
new DefaultAzureCredential())
.AsAIAgent(
model: "gpt-4o-mini",
name: "Joker",
instructions: "You are good at telling jokes.");
Console.WriteLine(await agent.RunAsync("Tell me a joke about a pirate."));
تحذير
DefaultAzureCredential مناسب للتنمية ولكنه يتطلب دراسة متأنية في الإنتاج. في الإنتاج، ضع في اعتبارك استخدام بيانات اعتماد محددة (على سبيل المثال، ManagedIdentityCredential) لتجنب مشكلات زمن الانتقال، وبحث بيانات الاعتماد غير المقصودة، والمخاطر الأمنية المحتملة من الآليات الاحتياطية.
هذا المسار هو التعليمات البرمجية أولا ولا ينشئ مورد عامل مدار بواسطة الخادم.
استخدام الوكيل
عامل الاستجابات هو معيار AIAgent ويدعم الجلسات والأدوات والبرامج الوسيطة والتدفق.
AgentSession session = await agent.CreateSessionAsync();
Console.WriteLine(await agent.RunAsync("Tell me a joke.", session));
Console.WriteLine(await agent.RunAsync("Now make it funnier.", session));
لمزيد من المعلومات حول كيفية التشغيل والتفاعل مع الوكلاء، راجع البرامج التعليمية لبدء تشغيل العامل.
ادوات
يدعم وكلاء استجابات Foundry التي تم إنشاؤها من AIProjectClient.AsAIAgent(...) سطح أداة إطار عمل العامل القياسي. راجع نظرة عامة على الأدوات لمصفوفة الميزات الكاملة.
| الأداة | Notes |
|---|---|
| أدوات الدالة | مدعوم. |
| الموافقة على الأداة | مدعوم. يوفره عميل الدردشة لاستدعاء الوظائف في إطار العمل. |
| مترجم شفرة | مدعوم. |
| البحث عن الملفات | مدعوم. |
| أدوات MCP المستضافة | مدعوم. |
| أدوات MCP المحلية | مدعوم. |
| Microsoft مربع أدوات Foundry | مدعوم. |
Foundry في Python
في Python، يعيش جميع العملاء الخاصين ب Foundry الآن ضمن agent_framework.foundry.
-
agent-framework-foundryيوفر موصلات Cloud Foundry:FoundryChatClientوFoundryAgentFoundryEmbeddingClientو و.FoundryMemoryProvider -
agent-framework-foundry-localيوفرFoundryLocalClientلتنفيذ النموذج المحلي.
Important
تغطي هذه الصفحة Microsoft نقاط نهاية مشروع Foundry والنماذج. للحصول على خدمة عامل Foundry، راجع Microsoft Foundry Agent Service. إذا كان لديك نقطة نهاية مورد OpenAI مستقلة Azure (https://<your-resource>.openai.azure.com)، فاستخدم إرشادات Python في صفحة موفر OpenAI. إذا كنت ترغب في تشغيل النماذج المدعومة محليا، فشاهد صفحة Foundry Local provider.
الدردشة وأنماط الوكيل في Python
| السيناريو | شكل Python | استخدم عندما |
|---|---|---|
| استدلال عادي مع نقطة نهاية استجابات Foundry | Agent(client=FoundryChatClient(...)) |
يمتلك تطبيقك تعريف العامل والأدوات وحلقة المحادثة، وتريد نشر نموذج في مشروع Foundry. |
| العوامل المدارة بواسطة الخدمة في خدمة عامل Foundry | FoundryAgent(...) |
تريد الاتصال ب PromptAgent أو HostedAgent الذي تم إنشاؤه وتكوينه في مدخل Foundry أو من خلال واجهات برمجة التطبيقات للخدمة. |
التثبيت
pip install agent-framework-foundry
تتضمن FoundryEmbeddingClient نفس agent-framework-foundry الحزمة أيضا لتضمينات نقاط نهاية نماذج Foundry.
الإعداد
FoundryChatClient
FOUNDRY_PROJECT_ENDPOINT="https://<your-project>.services.ai.azure.com"
FOUNDRY_MODEL="gpt-4o-mini"
FoundryEmbeddingClient
FOUNDRY_MODELS_ENDPOINT="https://<apim-instance>.azure-api.net/<foundry-instance>/models"
FOUNDRY_MODELS_API_KEY="<api-key>"
FOUNDRY_EMBEDDING_MODEL="text-embedding-3-small"
FOUNDRY_IMAGE_EMBEDDING_MODEL="Cohere-embed-v3-english" # optional
FoundryChatClient يستخدم نقطة نهاية المشروع.
FoundryEmbeddingClient يستخدم نقطة نهاية النماذج المنفصلة.
اختر عميل Python المناسب
| السيناريو | العميل المفضل | Notes |
|---|---|---|
| مورد Azure OpenAI | OpenAIChatCompletionClient / OpenAIChatClient |
استخدم صفحة موفر OpenAI. |
| استدلال مشروع Microsoft Foundry | Agent(client=FoundryChatClient(...)) |
يستخدم نقطة نهاية استجابات Foundry. |
| Microsoft عامل مدار بواسطة خدمة Foundry | FoundryAgent |
يوصى به ل عوامل المطالبة و HostedAgents. |
| تضمينات Microsoft Foundry models-endpoint | FoundryEmbeddingClient |
يستخدم FOUNDRY_MODELS_ENDPOINT علامة الجمع / FOUNDRY_EMBEDDING_MODELFOUNDRY_IMAGE_EMBEDDING_MODEL . |
| وقت التشغيل المحلي ل Foundry | Agent(client=FoundryLocalClient(...)) |
راجع Foundry Local. |
إنشاء عامل باستخدام FoundryChatClient
FoundryChatClient يتصل بنموذج تم نشره في مشروع Foundry ويستخدم نقطة نهاية الاستجابات. قم بإقرانه بمعيار Agent عندما يجب أن يمتلك تطبيقك الإرشادات والأدوات ومعالجة الجلسة.
from agent_framework import Agent
from agent_framework.foundry import FoundryChatClient
from azure.identity import AzureCliCredential
agent = Agent(
client=FoundryChatClient(
project_endpoint="https://your-project.services.ai.azure.com",
model="gpt-4o-mini",
credential=AzureCliCredential(),
),
name="FoundryWeatherAgent",
instructions="You are a helpful assistant.",
)
FoundryChatClientهو المسار Python الأول ل Foundry للاستدلال المباشر ويدعم الأدوات والمخرجات المنظمة والتدفق.
الاشتراك في المنطق المشفر
FoundryChatClient لا يطلب reasoning.encrypted_content بشكل افتراضي. يمنع هذا الافتراضي فشل الطلب على النماذج التي لا تدعم المنطق المشفرة.
للنشر القادرة، اشترك من خلال الخيارات الافتراضية للعامل:
from agent_framework import Agent
from agent_framework.foundry import FoundryChatClient
from azure.identity import AzureCliCredential
agent = Agent(
client=FoundryChatClient(
project_endpoint="https://your-project.services.ai.azure.com",
model="<reasoning-model-deployment>",
credential=AzureCliCredential(),
),
default_options={"include": ["reasoning.encrypted_content"]},
)
ادوات
FoundryChatClient يشحن أساليب المصنع الثابتة لكل أداة Foundry مستضافة. تقوم المصانع بإعادة عناصر أداة SDK التي تمررها إلى tools=Agent أو مباشرة إلى client.get_response(..., tools=[...]). للحصول على أدوات الوكيل المدارة بواسطة الخدمة، راجع Microsoft Foundry Agent Service.
المصانع هي أساليب فئة، لذلك لا تحتاج إلى مثيل لإنشاء أداة:
from agent_framework import Agent
from agent_framework.foundry import FoundryChatClient
from azure.identity import AzureCliCredential
agent = Agent(
client=FoundryChatClient(credential=AzureCliCredential()),
instructions="You can search the web and run code.",
tools=[
FoundryChatClient.get_web_search_tool(),
FoundryChatClient.get_code_interpreter_tool(),
],
)
دعم الأدوات
يسرد الجدول أدناه كل أداة يعرضها Python FoundryChatClient اليوم.
| الأداة | تشغيل المصنع FoundryChatClient |
Status | التفاصيل |
|---|---|---|---|
| أدوات الدالة | n/a — قم بتمرير أي Python قابل للاتصال أو@ai_function |
التوفر العام | تم استدعاؤه محليا في عملية Python. |
| الموافقة على الأداة | n/a — يلتف الأدوات الموجودة | التوفر العام | يعمل مع MCP المستضاف وأدوات الدالة. |
| مترجم شفرة | get_code_interpreter_tool |
التوفر العام | تنفيذ التعليمات البرمجية لبيئة الاختبار المعزولة على Foundry. |
| البحث عن الملفات | get_file_search_tool |
التوفر العام | ابحث عن الملفات التي تم تحميلها عبر مخازن ناقلات Foundry. |
| بحث الويب | get_web_search_tool |
التوفر العام | أسس الويب المدعومة من Bing التي تديرها Microsoft. Azure نماذج OpenAI فقط. |
| توليد الصور | get_image_generation_tool |
التوفر العام | إنشاء الصور المستضافة على Foundry. |
| MCP المستضاف | get_mcp_tool |
التوفر العام | خادم MCP البعيد الذي تم استدعاؤه بواسطة Foundry. |
| MCP المحلي | n/a — استخدام MCPStreamableHTTPTool / MCPStdioTool |
التوفر العام | يعمل في العملية الخاصة بك؛ يعمل مع أي عميل. |
| Microsoft مربع أدوات Foundry |
MCPStreamableHTTPTool او FoundryToolbox |
Beta | مستهلك عبر MCP من FoundryChatClient؛ من جانب الخادم المرفق على FoundryAgent. |
| التأريض في بينج | get_bing_grounding_tool |
تجريبي | إحضار الأرضية الخاصة بك مع مورد بحث Bing. |
| بحث Bing المخصص | get_bing_custom_search_tool |
معاينه | يقتصر أساس Bing على قائمة مجالات منسقة. |
| Azure بحث الذكاء الاصطناعي | get_azure_ai_search_tool |
تجريبي | ابحث في فهرس البحث باستخدام الذكاء الاصطناعي في Azure عبر اتصال Foundry. |
| SharePoint | get_sharepoint_tool |
معاينه | إجابات أساسية في محتوى SharePoint. |
| مايكروسوفت فابريك | get_fabric_tool |
معاينه | الاستعلام عن عامل بيانات Fabric. |
| البحث في الذاكرة | get_memory_search_tool |
معاينه | ابحث في مخزن ذاكرة مدار بواسطة Foundry. |
| استخدام الحاسوب | get_computer_use_tool |
معاينه | اسمح للعامل بقيادة بيئة سطح المكتب أو المستعرض. |
| أتمتة المتصفح | get_browser_automation_tool |
معاينه | محرك مستعرض عبر اتصال Azure Playwright. |
| وكيل إلى وكيل (A2A) | get_a2a_tool |
معاينه | استدعاء عامل A2A آخر كأداة. |
Note
تقوم المصانع التجريبية بتغليف أنواع GA Foundry SDK ولكن قد تتغير برامج التضمين نفسها قبل GA.
تقوم مصانع المعاينة بتضمين أنواع Foundry SDK التي تكون قدرتها الأساسية قيد المعاينة وقد تتغير أو تتم إزالتها.
ExperimentalWarning يصدر كلاهما أول مرة يتم استخدامهما في عملية.
متغيرات البحث على الويب
يعرض Foundry ثلاثة خيارات تأريض مدعومة من Bing. اختر السيناريو الذي يطابق السيناريو الخاص بك:
-
get_web_search_tool(GA) — الإعداد الافتراضي الصفري; مورد Bing المدار بواسطة Microsoft. Azure نماذج OpenAI فقط. يقتصر علىuser_locationوsearch_context_size. -
get_bing_grounding_tool(تجريبي) — أحضر الأرضية الخاصة بك مع مورد Azure بحث Bing. يدعمcountنماذجfreshnessmarketset_langFoundry و و غير OpenAI. -
get_bing_custom_search_tool(معاينة) — أحضر مثيل Bing Custom Search لتقييد التأريض إلى مجموعة منسقة من المجالات.
ترسل جميعها بيانات البحث خارج حدود التوافق Azure. راجع نظرة عامة على أساس الويب للمقارنة الكاملة.
client = FoundryChatClient(credential=AzureCliCredential())
# Default (GA): minimal configuration
web_search = client.get_web_search_tool(
user_location={"city": "Amsterdam", "country": "NL"},
search_context_size="medium",
)
توليد الصور
get_image_generation_tool تكوين أداة إنشاء الصور المستضافة في Foundry. ينتج النموذج محتوى الصورة في الاستجابة - لا توجد ملفات إضافية لإدارتها.
image_gen = FoundryChatClient.get_image_generation_tool(
model="gpt-image-1",
size="1024x1024",
output_format="png",
quality="high",
)
تأريض بينج
get_bing_grounding_tool يلتف على الأرضية مع أداة Bing Search Foundry. يمكنك إنشاء مورد Grounding باستخدام Bing Search بنفسك وإضافته كاتصال مشروع Foundry، ثم تمرير معرف الاتصال.
bing = FoundryChatClient.get_bing_grounding_tool(
connection_id="/subscriptions/.../connections/my-bing",
market="en-US",
freshness="Day",
count=10,
)
بحث Bing المخصص
get_bing_custom_search_tool يقيد الأساس إلى قائمة السماح المعرفة على مورد Bing Custom Search.
bing_custom = FoundryChatClient.get_bing_custom_search_tool(
connection_id="/subscriptions/.../connections/my-bing-custom",
instance_name="docs-only",
market="en-US",
)
البحث باستخدام الذكاء الاصطناعي في Azure
get_azure_ai_search_toolيتيح للعامل الاستعلام عن فهرس البحث باستخدام الذكاء الاصطناعي في Azure من خلال اتصال مشروع Foundry.
ai_search = FoundryChatClient.get_azure_ai_search_tool(
index_connection_id="/subscriptions/.../connections/my-search",
index_name="product-docs",
query_type="vector_semantic_hybrid",
top_k=5,
)
SharePoint
get_sharepoint_toolإجابات الأسباب في محتوى SharePoint يمكن الوصول إليه من خلال اتصال SharePoint Foundry.
sharepoint = FoundryChatClient.get_sharepoint_tool(
connection_id="/subscriptions/.../connections/my-sharepoint",
)
Microsoft Fabric
get_fabric_toolيربط العامل بعامل بيانات Microsoft Fabric عبر اتصال Foundry حتى يتمكن العامل من الإجابة عن الأسئلة عبر بيانات Fabric.
fabric = FoundryChatClient.get_fabric_tool(
connection_id="/subscriptions/.../connections/my-fabric",
)
البحث في الذاكرة
get_memory_search_tool يتيح للعامل البحث في مخزن ذاكرة مدار بواسطة Foundry، يتم تحديد نطاقه اختياريا لمستخدم أو مستأجر.
memory = FoundryChatClient.get_memory_search_tool(
memory_store_name="user-preferences",
scope="{{$userId}}",
)
استخدام الكمبيوتر
get_computer_use_tool تكوين أداة معاينة استخدام الكمبيوتر - يمكن للنموذج تشغيل بيئة سطح المكتب أو المستعرض عن طريق إصدار إجراءات المؤشر ولوحة المفاتيح.
computer = FoundryChatClient.get_computer_use_tool(
environment="browser",
display_width=1280,
display_height=800,
)
أتمتة المتصفح
get_browser_automation_toolسلك العامل في مورد اختبار Azure Playwright عبر اتصال Foundry. يمكن للعامل قيادة مستعرض حقيقي من خلال Playwright.
browser = FoundryChatClient.get_browser_automation_tool(
connection_id="/subscriptions/.../connections/my-playwright",
)
وكيل إلى وكيل (A2A)
get_a2a_tool يعرض عامل A2A عن بعد كأداة حتى يتمكن عامل Foundry من استدعائه. قم بتوفير إما base_url (واختياريا agent_card_path) أو project_connection_id لاتصال A2A مخزن.
a2a = FoundryChatClient.get_a2a_tool(
base_url="https://remote-agent.example.com",
agent_card_path="/.well-known/agent-card.json",
)
لاكتشاف A2A العام وجلسات العمل وإرشادات الدفق، راجع خدمة عامل A2A.
إنشاء عمليات تضمين باستخدام FoundryEmbeddingClient
استخدم FoundryEmbeddingClient عندما تريد تضمين نص أو صورة من نقطة نهاية نماذج Foundry.
from agent_framework.foundry import FoundryEmbeddingClient
async with FoundryEmbeddingClient() as client:
result = await client.get_embeddings(["hello from Agent Framework"])
print(result[0].dimensions)
استخدام الوكيل
FoundryChatClientيتكامل مع تجربة Python Agent القياسية، بما في ذلك استدعاء الأدوات والجلسات واستجابات الدفق. بالنسبة إلى أوقات التشغيل المحلية، استخدم صفحة الموفر المحلي ل Foundry المنفصلة.
للحصول على حزم مسماة ذات إصدار لتكوينات الأدوات المستضافة، راجع Microsoft مربع أدوات Foundry.
Foundry في Go
يوفر Go SDK Microsoft وكلاء Foundry من خلال github.com/microsoft/agent-framework-go/provider/foundryprovider.
راجع نماذج Foundry Go للحصول على الاستدلال المباشر وأدوات الوظيفة والأدوات المستضافة وMCP وأمثلة عامل الخادم.
تدعم الحزمة هدفين للعامل:
| Target | شكل انتقال | استخدم عندما |
|---|---|---|
| نشر نموذج مدعوم Project | foundryprovider.ModelDeployment("gpt-4o-mini") |
يمتلك تطبيقك الإرشادات والأدوات وتدفق المحادثات. |
| عامل Foundry الموجود من جانب الخادم | foundryprovider.ServerAgent("my-agent") |
تم تكوين تعريف العامل بالفعل في Foundry. |
الإعداد
تعيين نقطة نهاية مشروع Foundry ونشر النموذج:
FOUNDRY_PROJECT_ENDPOINT="https://<your-project>.services.ai.azure.com/api/projects/<project-id>"
FOUNDRY_MODEL="gpt-4o-mini"
عامل Foundry مدعوم من Project
استخدم ModelDeployment عندما تريد إنشاء عامل إطار عمل عامل في التعليمات البرمجية وتمرير الإرشادات والأدوات والبرامج الوسيطة وموفري السياق من تطبيق Go الخاص بك.
import (
"context"
"os"
"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
"github.com/microsoft/agent-framework-go/agent"
"github.com/microsoft/agent-framework-go/provider/foundryprovider"
)
endpoint := os.Getenv("FOUNDRY_PROJECT_ENDPOINT")
model := os.Getenv("FOUNDRY_MODEL")
token, err := azidentity.NewDefaultAzureCredential(nil)
if err != nil {
panic(err)
}
a := foundryprovider.NewAgent(
endpoint,
token,
foundryprovider.ModelDeployment(model),
foundryprovider.AgentConfig{
Instructions: "You are good at telling jokes.",
Config: agent.Config{
Name: "Joker",
},
},
)
resp, err := a.RunText(context.Background(), "Tell me a joke about a pirate.").Collect()
عامل Foundry الموجود من جانب الخادم
استخدم ServerAgent عندما تريد استدعاء عامل تم تكوينه بالفعل في Foundry. يمتلك العامل من جانب الخادم التعليمات والأدوات الخاصة به، لذلك AgentConfig.Instructions يتم تجاهل هذا الهدف.
a := foundryprovider.NewAgent(
endpoint,
token,
foundryprovider.ServerAgent("my-agent"),
foundryprovider.AgentConfig{
Config: agent.Config{
Name: "my-agent",
},
},
)
resp, err := a.RunText(ctx, "Summarize the current project status.").Collect()
ادوات
يدعم وكلاء Foundry المدعومون Project سطح أداة Go Agent Framework القياسي للأدوات المحلية وإعلانات الأدوات المستضافة المدعومة.
| الأداة | Status | Notes |
|---|---|---|
| أدوات الدالة | مدعوم | يتم تشغيل الوظائف في عملية Go الخاصة بك. |
| الموافقة على الأداة | مدعوم | يعمل مع أدوات الدالة المحلية من خلال حلقة الاستدعاء التلقائي للأداة. |
| مترجم شفرة | مدعوم | استخدم &hostedtool.CodeInterpreter{}. |
| بحث الويب | مدعوم | استخدم &hostedtool.WebSearch{}. |
| أدوات MCP المحلية | مدعوم | استخدم tool/mcptool للاتصال بخادم MCP وعرض أدواته محليا. |
| أدوات MCP المستضافة | غير موثق حاليا ل Go Foundry | استخدم أدوات MCP المحلية عندما تحتاج إلى خوادم MCP مع عوامل Go Foundry. |
| Microsoft مربع أدوات Foundry | غير مكشوف حاليا من خلال مساعد Go. |
بالنسبة لأدوات الدالة المحلية، أضف tool.Tool قيما من خلال agent.Config.Tools:
a := foundryprovider.NewAgent(
endpoint,
token,
foundryprovider.ModelDeployment(model),
foundryprovider.AgentConfig{
Instructions: "You are a helpful assistant.",
Config: agent.Config{
Tools: []tool.Tool{weatherTool},
},
},
)
لتنفيذ التعليمات البرمجية المستضافة، قم بتمرير إعلان الأداة المستضافة:
a := foundryprovider.NewAgent(
endpoint,
token,
foundryprovider.ModelDeployment(model),
foundryprovider.AgentConfig{
Instructions: "You solve problems with code.",
Config: agent.Config{
Tools: []tool.Tool{&hostedtool.CodeInterpreter{}},
},
},
)
رؤوس العملاء والنموذج المقدم
يقبل Foundry الرؤوس x-client-* لكل تشغيل. أضفها باستخدام foundryprovider.WithClientHeader أو foundryprovider.WithClientHeaders:
resp, err := a.RunText(
ctx,
"Hello!",
foundryprovider.WithClientHeader("x-client-scenario", "docs"),
).Collect()
عندما يقوم Foundry بإرجاع عنوان الاستجابة x-ms-served-model ، يضيفه موفر Go إلى الاستجابة/تحديث خصائص إضافية ك ServedModel.
if servedModel, ok := resp.AdditionalProperties["ServedModel"].(string); ok {
fmt.Println(servedModel)
}
موفر ذاكرة Foundry
استخدم foundryprovider.NewMemoryProvider عندما تريد أن يقوم عامل إطار عمل العامل باسترداد من مخزن ذاكرة مدار بواسطة Foundry وتحديثه حول كل تشغيل.
import (
"log/slog"
"github.com/microsoft/agent-framework-go/agent"
"github.com/microsoft/agent-framework-go/provider/foundryprovider"
)
memoryProvider := foundryprovider.NewMemoryProvider(
endpoint,
tokenCredential,
"memory-store-sample",
func(*agent.Session) string { return "user-123" },
foundryprovider.MemoryProviderConfig{
Logger: slog.Default(),
},
)
a := foundryprovider.NewAgent(
endpoint,
tokenCredential,
foundryprovider.ModelDeployment(model),
foundryprovider.AgentConfig{
Instructions: "Use known memories about the user when responding.",
Config: agent.Config{
Name: "FoundryMemoryAgent",
ContextProviders: []agent.ContextProvider{memoryProvider},
},
},
)
يجب أن تكون نقطة النهاية ذات نطاق مشروع Microsoft نقطة نهاية Foundry، ويجب أن يكون مخزن الذاكرة موجودا بالفعل في هذا المشروع. يجب أن يرجع رد اتصال النطاق مستخدما ثابتا أو مستأجرا أو مفتاح قسم محادثة.
Tip
راجع نموذج ذاكرة Foundry Go للحصول على مثال كامل قابل للتشغيل.
الفجوات الحالية في Go
لا يتضمن دعم Go حاليا واجهات برمجة تطبيقات النشر/دورة الحياة/المسؤول المستضافة على Foundry أو تضمين العملاء أو المساعدين الخاصين ب Go Microsoft Foundry Toolbox. استخدم مدخل Foundry أو حزم SDK للخدمة لتلك العمليات.