{"id":111168,"date":"2025-05-30T03:15:14","date_gmt":"2025-05-29T22:45:14","guid":{"rendered":"https:\/\/nabfollower.com\/blog\/ai-powered-net-how-to-integrate-chatgpt-or-azure-openai-in-your-web-apps-2025-guide-1pe7\/"},"modified":"2025-05-30T03:15:14","modified_gmt":"2025-05-29T22:45:14","slug":"ai-powered-net-how-to-integrate-chatgpt-or-azure-openai-in-your-web-apps-2025-guide-1pe7","status":"publish","type":"post","link":"https:\/\/nabfollower.com\/blog\/ai-powered-net-how-to-integrate-chatgpt-or-azure-openai-in-your-web-apps-2025-guide-1pe7\/","title":{"rendered":"AI-Powered .NET: \u0646\u062d\u0648\u0647 \u0627\u062f\u063a\u0627\u0645 Chatgpt \u06cc\u0627 Azure OpenAi \u062f\u0631 \u0628\u0631\u0646\u0627\u0645\u0647 \u0647\u0627\u06cc \u0648\u0628 \u062e\u0648\u062f (\u0631\u0627\u0647\u0646\u0645\u0627\u06cc 2025)"},"content":{"rendered":"<div data-article-id=\"2542348\" id=\"article-body\">\n<p>\u0633\u0646 \u0647\u0648\u0634 \u0645\u0635\u0646\u0648\u0639\u06cc \u062f\u0631 \u062d\u0627\u0644 \u0622\u0645\u062f\u0646 \u0646\u06cc\u0633\u062a &#8211; \u062f\u0631 \u062d\u0627\u0644 \u062d\u0627\u0636\u0631 \u0627\u06cc\u0646\u062c\u0627 \u0627\u0633\u062a. \u0628\u0647 \u0639\u0646\u0648\u0627\u0646 \u062a\u0648\u0633\u0639\u0647 \u062f\u0647\u0646\u062f\u06af\u0627\u0646 .NET \u060c \u0627\u062f\u063a\u0627\u0645 LLM \u0647\u0627\u06cc \u0642\u062f\u0631\u062a\u0645\u0646\u062f \u0645\u0627\u0646\u0646\u062f ChatGPT \u06cc\u0627 Azure OpenAI \u062f\u0631 \u0628\u0631\u0646\u0627\u0645\u0647 \u0647\u0627\u06cc \u0648\u0628 \u0645\u06cc \u062a\u0648\u0627\u0646\u062f \u0647\u0645\u0647 \u0686\u06cc\u0632 \u0631\u0627 \u0627\u0632 \u067e\u0634\u062a\u06cc\u0628\u0627\u0646\u06cc \u0645\u0634\u062a\u0631\u06cc \u062f\u0642\u06cc\u0642 \u062a\u0631 \u06af\u0631\u0641\u062a\u0647 \u062a\u0627 \u067e\u0631 \u06a9\u0631\u062f\u0646 \u0641\u0631\u0645 AI \u0648 \u0627\u06cc\u062c\u0627\u062f \u0645\u062d\u062a\u0648\u0627\u06cc \u067e\u0648\u06cc\u0627 \u0628\u0627\u0632 \u06a9\u0646\u062f.<\/p>\n<p>\u062f\u0631 \u0627\u06cc\u0646 \u0631\u0627\u0647\u0646\u0645\u0627 \u060c \u0646\u062d\u0648\u0647 \u0627\u062f\u063a\u0627\u0645 \u0686\u062a\u067e (\u0627\u0632 \u0637\u0631\u06cc\u0642 Azure OpenAI) \u0631\u0627 \u062f\u0631 \u0628\u0631\u0646\u0627\u0645\u0647 ASP.NET Core \u0628\u0647 \u0645\u0631\u062d\u0644\u0647 \u0628\u0647 \u0645\u0631\u062d\u0644\u0647-\u0628\u0627 \u0646\u0645\u0648\u0646\u0647 \u0647\u0627\u06cc \u06a9\u062f \u060c \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u0627\u0632 \u0645\u0648\u0627\u0631\u062f \u0648 \u0628\u0647\u062a\u0631\u06cc\u0646 \u0631\u0648\u0634 \u0647\u0627 \u0645\u06cc \u067e\u0631\u062f\u0627\u0632\u06cc\u0645.<\/p>\n<p><strong>\u0686\u0631\u0627 \u0647\u0648\u0634 \u0645\u0635\u0646\u0648\u0639\u06cc \u0631\u0627 \u062f\u0631 \u0628\u0631\u0646\u0627\u0645\u0647 \u0647\u0627\u06cc \u062f\u0627\u062a \u0646\u062a \u062e\u0648\u062f \u0627\u062f\u063a\u0627\u0645 \u06a9\u0646\u06cc\u062f\u061f<\/strong><\/p>\n<ul>\n<li>\u06a9\u0627\u0631\u0647\u0627\u06cc \u06a9\u0627\u0631\u0628\u0631 \u062a\u06a9\u0631\u0627\u0631\u06cc \u0631\u0627 \u062e\u0648\u062f\u06a9\u0627\u0631 \u06a9\u0646\u06cc\u062f<\/li>\n<li>UI \u0647\u0648\u0634\u0645\u0646\u062f \u0648 \u0645\u06a9\u0627\u0644\u0645\u0647 \u0627\u06cc \u0631\u0627 \u0627\u0631\u0627\u0626\u0647 \u062f\u0647\u06cc\u062f<\/li>\n<li>\u062a\u0648\u0644\u06cc\u062f \u0645\u062d\u062a\u0648\u0627 \u0628\u0647 \u0635\u0648\u0631\u062a \u067e\u0648\u06cc\u0627<\/li>\n<li>\u062c\u0633\u062a\u062c\u0648\u06cc \u0645\u0639\u0646\u0627\u06cc\u06cc \u06cc\u0627 \u067e\u0631\u0633 \u0648 \u062c\u0648\u0647\u0627\u06cc \u0632\u0628\u0627\u0646 \u0637\u0628\u06cc\u0639\u06cc \u0631\u0627 \u0641\u0639\u0627\u0644 \u06a9\u0646\u06cc\u062f<\/li>\n<li>\u0628\u0631\u0627\u06cc \u0627\u0628\u0632\u0627\u0631\u0647\u0627\u06cc \u062f\u0627\u062e\u0644\u06cc \u0639\u0648\u0627\u0645\u0644 \u0647\u0648\u0634\u0645\u0646\u062f \u0628\u0633\u0627\u0632\u06cc\u062f<\/li>\n<\/ul>\n<p><strong>\u067e\u06cc\u0634 \u0646\u06cc\u0627\u0632\u0647\u0627\u06cc<\/strong><\/p>\n<ul>\n<li>\u067e\u0631\u0648\u0698\u0647 ASP.NET Core 6+ (\u0628\u0647 \u0639\u0646\u0648\u0627\u0646 \u0645\u062b\u0627\u0644 \u060c \u0635\u0641\u062d\u0627\u062a \u062a\u06cc\u063a \u06cc\u0627 API \u0648\u0628)<\/li>\n<li>\u0627\u0634\u062a\u0631\u0627\u06a9 \u0644\u0627\u062c\u0648\u0631\u062f \u0628\u0627 \u0645\u0646\u0627\u0628\u0639 OpenAI \u0645\u0633\u062a\u0642\u0631 \u0634\u062f\u0647 \u0627\u0633\u062a<\/li>\n<li>\u062f\u0633\u062a\u0631\u0633\u06cc \u0628\u0647 \u06a9\u0644\u06cc\u062f API Azure Openai<\/li>\n<li>\u062f\u0627\u0646\u0634 \u0627\u0633\u0627\u0633\u06cc \u0627\u0632 \u062a\u0645\u0627\u0633 \u0647\u0627\u06cc HTTP \u062f\u0631 .NET (httpclient)<\/li>\n<\/ul>\n<p><strong>\u0627\u062f\u063a\u0627\u0645 \u06af\u0627\u0645 \u0628\u0647 \u06af\u0627\u0645<\/strong><\/p>\n<p>1\u20e3 <strong>\u062a\u0646\u0638\u06cc\u0645 Azure Openai \u062f\u0631 \u067e\u0648\u0631\u062a\u0627\u0644 \u0644\u0627\u062c\u0648\u0631\u062f<\/strong><\/p>\n<p>\u0628\u0647 \u067e\u0648\u0631\u062a\u0627\u0644 \u0644\u0627\u062c\u0648\u0631\u062f \u0628\u0631\u0648\u06cc\u062f \u2192 \u06cc\u06a9 \u0645\u0646\u0628\u0639 &#8220;Azure Openai&#8221; \u0627\u06cc\u062c\u0627\u062f \u06a9\u0646\u06cc\u062f<br \/>\u0627\u0633\u062a\u0642\u0631\u0627\u0631 \u06cc\u06a9 \u0645\u062f\u0644 (\u0628\u0647 \u0639\u0646\u0648\u0627\u0646 \u0645\u062b\u0627\u0644 \u060c GPT-35-Turbo \u060c GPT-4)<br \/>\u06af\u0631\u0641\u062a\u0646: \u0646\u0642\u0637\u0647 \u067e\u0627\u06cc\u0627\u0646\u06cc \u060c \u0646\u0627\u0645 \u0627\u0633\u062a\u0642\u0631\u0627\u0631 \u060c \u06a9\u0644\u06cc\u062f API<\/p>\n<p>2 <strong>\u0645\u0634\u062a\u0631\u06cc HTTP \u0631\u0627 \u062f\u0631 ASP.NET CORE \u0627\u0636\u0627\u0641\u0647 \u06a9\u0646\u06cc\u062f<\/strong><\/p>\n<div class=\"highlight js-code-highlight\">\n<pre class=\"highlight plaintext\"><code>services.AddHttpClient(\"AzureOpenAI\", client =&gt;\n{\n    client.BaseAddress = new Uri(\"https:\/\/<your-resource>.openai.azure.com\/\");\n    client.DefaultRequestHeaders.Add(\"api-key\", \"<your-api-key>\");\n});\n<\/your-api-key><\/your-resource><\/code><\/pre>\n<div class=\"highlight__panel js-actions-panel\">\n<div class=\"highlight__panel-action js-fullscreen-code-action\">\n    <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"20px\" height=\"20px\" viewbox=\"0 0 24 24\" class=\"highlight-action crayons-icon highlight-action--fullscreen-on\"><title>\u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u0631\u0627 \u0648\u0627\u0631\u062f \u06a9\u0646\u06cc\u062f<\/title>\n    <path d=\"M16 3h6v6h-2V5h-4V3zM2 3h6v2H4v4H2V3zm18 16v-4h2v6h-6v-2h4zM4 19h4v2H2v-6h2v4z\"\/>\n<\/svg><\/p>\n<p>    <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"20px\" height=\"20px\" viewbox=\"0 0 24 24\" class=\"highlight-action crayons-icon highlight-action--fullscreen-off\"><title>\u0627\u0632 \u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u062e\u0627\u0631\u062c \u0634\u0648\u06cc\u062f<\/title>\n    <path d=\"M18 7h4v2h-6V3h2v4zM8 9H2V7h4V3h2v6zm10 8v4h-2v-6h6v2h-4zM8 15v6H6v-4H2v-2h6z\"\/>\n<\/svg><\/p>\n<\/div>\n<\/div>\n<\/div>\n<p>3\u20e3 <strong>\u0627\u06cc\u062c\u0627\u062f \u062f\u0631\u062e\u0648\u0627\u0633\u062a \u0686\u062a dto<\/strong><\/p>\n<div class=\"highlight js-code-highlight\">\n<pre class=\"highlight plaintext\"><code>public class ChatRequest\n{\n    public string Role { get; set; } = \"user\";\n    public string Content { get; set; } = string.Empty;\n}\n<\/code><\/pre>\n<div class=\"highlight__panel js-actions-panel\">\n<div class=\"highlight__panel-action js-fullscreen-code-action\">\n    <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"20px\" height=\"20px\" viewbox=\"0 0 24 24\" class=\"highlight-action crayons-icon highlight-action--fullscreen-on\"><title>\u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u0631\u0627 \u0648\u0627\u0631\u062f \u06a9\u0646\u06cc\u062f<\/title>\n    <path d=\"M16 3h6v6h-2V5h-4V3zM2 3h6v2H4v4H2V3zm18 16v-4h2v6h-6v-2h4zM4 19h4v2H2v-6h2v4z\"\/>\n<\/svg><\/p>\n<p>    <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"20px\" height=\"20px\" viewbox=\"0 0 24 24\" class=\"highlight-action crayons-icon highlight-action--fullscreen-off\"><title>\u0627\u0632 \u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u062e\u0627\u0631\u062c \u0634\u0648\u06cc\u062f<\/title>\n    <path d=\"M18 7h4v2h-6V3h2v4zM8 9H2V7h4V3h2v6zm10 8v4h-2v-6h6v2h-4zM8 15v6H6v-4H2v-2h6z\"\/>\n<\/svg><\/p>\n<\/div>\n<\/div>\n<\/div>\n<p>4\u20e3 <strong>\u062a\u0645\u0627\u0633 API \u062a\u06a9\u0645\u06cc\u0644 \u0686\u062a \u0631\u0627 \u0628\u0633\u0627\u0632\u06cc\u062f<\/strong><\/p>\n<div class=\"highlight js-code-highlight\">\n<pre class=\"highlight plaintext\"><code>public class OpenAIService\n{\n    private readonly HttpClient _client;\n    private readonly string _deployment = \"gpt-35-turbo\";\n\n    public OpenAIService(IHttpClientFactory factory)\n    {\n        _client = factory.CreateClient(\"AzureOpenAI\");\n    }\n\n    public async Task<string> GetResponseAsync(string userPrompt)\n    {\n        var payload = new\n        {\n            messages = new[]\n            {\n                new { role = \"user\", content = userPrompt }\n            },\n            max_tokens = 200\n        };\n\n        var response = await _client.PostAsJsonAsync(\n            $\"\/openai\/deployments\/{_deployment}\/chat\/completions?api-version=2023-03-15-preview\",\n            payload);\n\n        response.EnsureSuccessStatusCode();\n        var result = await response.Content.ReadFromJsonAsync<jsonelement>();\n        return result.GetProperty(\"choices\")[0].GetProperty(\"message\").GetProperty(\"content\").GetString();\n    }\n}\n\n<\/jsonelement><\/string><\/code><\/pre>\n<div class=\"highlight__panel js-actions-panel\">\n<div class=\"highlight__panel-action js-fullscreen-code-action\">\n    <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"20px\" height=\"20px\" viewbox=\"0 0 24 24\" class=\"highlight-action crayons-icon highlight-action--fullscreen-on\"><title>\u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u0631\u0627 \u0648\u0627\u0631\u062f \u06a9\u0646\u06cc\u062f<\/title>\n    <path d=\"M16 3h6v6h-2V5h-4V3zM2 3h6v2H4v4H2V3zm18 16v-4h2v6h-6v-2h4zM4 19h4v2H2v-6h2v4z\"\/>\n<\/svg><\/p>\n<p>    <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"20px\" height=\"20px\" viewbox=\"0 0 24 24\" class=\"highlight-action crayons-icon highlight-action--fullscreen-off\"><title>\u0627\u0632 \u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u062e\u0627\u0631\u062c \u0634\u0648\u06cc\u062f<\/title>\n    <path d=\"M18 7h4v2h-6V3h2v4zM8 9H2V7h4V3h2v6zm10 8v4h-2v-6h6v2h-4zM8 15v6H6v-4H2v-2h6z\"\/>\n<\/svg><\/p>\n<\/div>\n<\/div>\n<\/div>\n<p>5\u20e3 <strong>\u0628\u0631\u0627\u06cc \u0645\u0635\u0631\u0641 \u0622\u0646 \u06cc\u06a9 \u0635\u0641\u062d\u0647 API \u06cc\u0627 \u062a\u06cc\u063a \u0627\u06cc\u062c\u0627\u062f \u06a9\u0646\u06cc\u062f<\/strong><\/p>\n<div class=\"highlight js-code-highlight\">\n<pre class=\"highlight plaintext\"><code>[ApiController]\n[Route(\"api\/chat\")]\npublic class ChatController : ControllerBase\n{\n    private readonly OpenAIService _openAI;\n\n    public ChatController(OpenAIService openAI)\n    {\n        _openAI = openAI;\n    }\n\n    [HttpPost]\n    public async Task<iactionresult> Ask([FromBody] ChatRequest request)\n    {\n        var reply = await _openAI.GetResponseAsync(request.Content);\n        return Ok(reply);\n    }\n}\n\n<\/iactionresult><\/code><\/pre>\n<div class=\"highlight__panel js-actions-panel\">\n<div class=\"highlight__panel-action js-fullscreen-code-action\">\n    <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"20px\" height=\"20px\" viewbox=\"0 0 24 24\" class=\"highlight-action crayons-icon highlight-action--fullscreen-on\"><title>\u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u0631\u0627 \u0648\u0627\u0631\u062f \u06a9\u0646\u06cc\u062f<\/title>\n    <path d=\"M16 3h6v6h-2V5h-4V3zM2 3h6v2H4v4H2V3zm18 16v-4h2v6h-6v-2h4zM4 19h4v2H2v-6h2v4z\"\/>\n<\/svg><\/p>\n<p>    <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"20px\" height=\"20px\" viewbox=\"0 0 24 24\" class=\"highlight-action crayons-icon highlight-action--fullscreen-off\"><title>\u0627\u0632 \u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u062e\u0627\u0631\u062c \u0634\u0648\u06cc\u062f<\/title>\n    <path d=\"M18 7h4v2h-6V3h2v4zM8 9H2V7h4V3h2v6zm10 8v4h-2v-6h6v2h-4zM8 15v6H6v-4H2v-2h6z\"\/>\n<\/svg><\/p>\n<\/div>\n<\/div>\n<\/div>\n<p><strong>\u0645\u0648\u0627\u0631\u062f \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u062f\u0631 \u062f\u0646\u06cc\u0627\u06cc \u0648\u0627\u0642\u0639\u06cc<\/strong><\/p>\n<ul>\n<li>\u067e\u0631\u0633\u0634 \u0647\u0648\u0634\u0645\u0646\u062f \u067e\u0631\u0633\u0634 \u0648 \u06cc\u06a9 \u0686\u062a \u0628\u0627\u0628\u0627\u062a<\/li>\n<li>\u062c\u0633\u062a\u062c\u0648\u06cc \u0645\u0633\u062a\u0646\u062f\u0627\u062a \u062f\u0627\u0631\u0627\u06cc \u0647\u0648\u0634 \u0645\u0635\u0646\u0648\u0639\u06cc<\/li>\n<li>\u0627\u06cc\u0645\u06cc\u0644 \u067e\u0648\u06cc\u0627 \u06cc\u0627 \u0698\u0646\u0631\u0627\u062a\u0648\u0631 \u06af\u0632\u0627\u0631\u0634<\/li>\n<li>\u0641\u0631\u0645 \u0647\u0648\u0634\u0645\u0646\u062f\u0627\u0646\u0647<\/li>\n<li>\u062a\u0631\u062c\u0645\u0647 \u0632\u0628\u0627\u0646 \u062f\u0631 \u067e\u0631\u0648\u0627\u0632<\/li>\n<\/ul>\n<p><strong>\u0646\u06a9\u0627\u062a \u0627\u0645\u0646\u06cc\u062a\u06cc<\/strong><\/p>\n<ul>\n<li>\u0647\u0645\u06cc\u0634\u0647 \u0648\u0631\u0648\u062f\u06cc \u06a9\u0627\u0631\u0628\u0631 \u0631\u0627 \u0636\u062f \u0622\u0628 \u06a9\u0646\u06cc\u062f<\/li>\n<li>\u0645\u062d\u062f\u0648\u062f\u06cc\u062a \u0647\u0627\u06cc \u062a\u0648\u06a9\u0646 \u0631\u0627 \u0628\u0631\u0627\u06cc \u062c\u0644\u0648\u06af\u06cc\u0631\u06cc \u0627\u0632 \u0633\u0648\u0621\u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u062a\u0646\u0638\u06cc\u0645 \u06a9\u0646\u06cc\u062f<\/li>\n<li>\u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u0627\u0632 \u0645\u06cc\u0627\u0646\u0647 \u0646\u0631\u0645 \u0627\u0641\u0632\u0627\u0631 \u0645\u062d\u062f\u0648\u062f \u0631\u0627 \u0627\u0632 \u0646\u0631\u062e \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u06a9\u0646\u06cc\u062f<\/li>\n<li>\u0647\u0631\u06af\u0632 \u06a9\u0644\u06cc\u062f API \u062e\u0648\u062f \u0631\u0627 \u062f\u0631 \u0642\u0633\u0645\u062a \u062c\u0644\u0648\u06cc \u0622\u0646 \u0642\u0631\u0627\u0631 \u0646\u062f\u0647\u06cc\u062f<\/li>\n<\/ul>\n<p><strong>\u062c\u0627\u06cc\u0632\u0647: \u0648\u0631\u0648\u062f \u0628\u0647 \u0633\u06cc\u0633\u062a\u0645 \u062a\u0639\u0627\u0645\u0644 \u0628\u0627 serilog<\/strong><\/p>\n<div class=\"highlight js-code-highlight\">\n<pre class=\"highlight plaintext\"><code>Log.Information(\"Prompt: {Prompt}, Response: {Response}\", userPrompt, response);\n<\/code><\/pre>\n<div class=\"highlight__panel js-actions-panel\">\n<div class=\"highlight__panel-action js-fullscreen-code-action\">\n    <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"20px\" height=\"20px\" viewbox=\"0 0 24 24\" class=\"highlight-action crayons-icon highlight-action--fullscreen-on\"><title>\u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u0631\u0627 \u0648\u0627\u0631\u062f \u06a9\u0646\u06cc\u062f<\/title>\n    <path d=\"M16 3h6v6h-2V5h-4V3zM2 3h6v2H4v4H2V3zm18 16v-4h2v6h-6v-2h4zM4 19h4v2H2v-6h2v4z\"\/>\n<\/svg><\/p>\n<p>    <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"20px\" height=\"20px\" viewbox=\"0 0 24 24\" class=\"highlight-action crayons-icon highlight-action--fullscreen-off\"><title>\u0627\u0632 \u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u062e\u0627\u0631\u062c \u0634\u0648\u06cc\u062f<\/title>\n    <path d=\"M18 7h4v2h-6V3h2v4zM8 9H2V7h4V3h2v6zm10 8v4h-2v-6h6v2h-4zM8 15v6H6v-4H2v-2h6z\"\/>\n<\/svg><\/p>\n<\/div>\n<\/div>\n<\/div>\n<p><strong>\u062e\u0644\u0627\u0635\u0647<\/strong><\/p>\n<p>\u0622\u06cc\u0646\u062f\u0647 \u062f\u0631 \u0627\u06cc\u0646\u062c\u0627 \u0627\u0633\u062a &#8211; \u0648 \u0647\u0648\u0634\u0645\u0646\u062f \u0627\u0633\u062a. \u0641\u0642\u0637 \u0628\u0627 \u0686\u0646\u062f \u062e\u0637 \u06a9\u062f \u060c \u0645\u06cc \u062a\u0648\u0627\u0646\u06cc\u062f \u0647\u0648\u0634 \u0645\u0635\u0646\u0648\u0639\u06cc \u067e\u06cc\u0634\u0631\u0641\u062a\u0647 \u0631\u0627 \u062f\u0631 \u0628\u0631\u0646\u0627\u0645\u0647 \u0647\u0627\u06cc .NET \u062e\u0648\u062f \u0627\u062f\u063a\u0627\u0645 \u06a9\u0631\u062f\u0647 \u0648 \u062a\u062c\u0631\u0628\u0647 \u0647\u0627\u06cc \u062a\u063a\u06cc\u06cc\u0631 \u0628\u0627\u0632\u06cc \u0631\u0627 \u0628\u0647 \u06a9\u0627\u0631\u0628\u0631\u0627\u0646 \u062e\u0648\u062f \u0627\u0631\u0627\u0626\u0647 \u062f\u0647\u06cc\u062f.<\/p>\n<p><strong>\u0686\u0647 \u0686\u06cc\u0632\u06cc \u0645\u06cc \u0633\u0627\u0632\u06cc\u062f\u061f<\/strong><\/p>\n<p>\u0622\u06cc\u0627 \u0647\u0646\u0648\u0632 \u0627\u0632 AI \u062f\u0631 \u06cc\u06a9 \u067e\u0631\u0648\u0698\u0647 .NET \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u06a9\u0631\u062f\u0647 \u0627\u06cc\u062f\u061f \u062c\u0627\u0644\u0628 \u062a\u0631\u06cc\u0646 \u0648\u06cc\u0698\u06af\u06cc \u0647\u0648\u0634 \u0645\u0635\u0646\u0648\u0639\u06cc \u0634\u0645\u0627 \u0645\u06cc \u062e\u0648\u0627\u0647\u06cc\u062f \u0628\u0633\u0627\u0632\u06cc\u062f\u061f \u0627\u0641\u06a9\u0627\u0631 \u062e\u0648\u062f \u0631\u0627 \u062f\u0631 \u0646\u0638\u0631\u0627\u062a \u0631\u0647\u0627 \u06a9\u0646\u06cc\u062f<\/p>\n<\/p><\/div>\n","protected":false},"excerpt":{"rendered":"<p>\u0633\u0646 \u0647\u0648\u0634 \u0645\u0635\u0646\u0648\u0639\u06cc \u062f\u0631 \u062d\u0627\u0644 \u0622\u0645\u062f\u0646 \u0646\u06cc\u0633\u062a &#8211; \u062f\u0631 \u062d\u0627\u0644 \u062d\u0627\u0636\u0631 \u0627\u06cc\u0646\u062c\u0627 \u0627\u0633\u062a. \u0628\u0647 \u0639\u0646\u0648\u0627\u0646 \u062a\u0648\u0633\u0639\u0647 \u062f\u0647\u0646\u062f\u06af\u0627\u0646 .NET \u060c \u0627\u062f\u063a\u0627\u0645 LLM \u0647\u0627\u06cc \u0642\u062f\u0631\u062a\u0645\u0646\u062f \u0645\u0627\u0646\u0646\u062f ChatGPT \u06cc\u0627 Azure OpenAI \u062f\u0631 \u0628\u0631\u0646\u0627\u0645\u0647 \u0647\u0627\u06cc \u0648\u0628 \u0645\u06cc \u062a\u0648\u0627\u0646\u062f \u0647\u0645\u0647 \u0686\u06cc\u0632 \u0631\u0627 \u0627\u0632 \u067e\u0634\u062a\u06cc\u0628\u0627\u0646\u06cc \u0645\u0634\u062a\u0631\u06cc \u062f\u0642\u06cc\u0642 \u062a\u0631 \u06af\u0631\u0641\u062a\u0647 \u062a\u0627 \u067e\u0631 \u06a9\u0631\u062f\u0646 \u0641\u0631\u0645 AI \u0648 \u0627\u06cc\u062c\u0627\u062f \u0645\u062d\u062a\u0648\u0627\u06cc \u067e\u0648\u06cc\u0627 \u0628\u0627\u0632 \u06a9\u0646\u062f. \u062f\u0631 &hellip;<\/p>\n","protected":false},"author":2,"featured_media":111169,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"fifu_image_url":"","fifu_image_alt":"","footnotes":""},"categories":[339],"tags":[],"class_list":["post-111168","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-dev"],"_links":{"self":[{"href":"https:\/\/nabfollower.com\/blog\/wp-json\/wp\/v2\/posts\/111168","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/nabfollower.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/nabfollower.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/nabfollower.com\/blog\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/nabfollower.com\/blog\/wp-json\/wp\/v2\/comments?post=111168"}],"version-history":[{"count":0,"href":"https:\/\/nabfollower.com\/blog\/wp-json\/wp\/v2\/posts\/111168\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/nabfollower.com\/blog\/wp-json\/wp\/v2\/media\/111169"}],"wp:attachment":[{"href":"https:\/\/nabfollower.com\/blog\/wp-json\/wp\/v2\/media?parent=111168"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/nabfollower.com\/blog\/wp-json\/wp\/v2\/categories?post=111168"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/nabfollower.com\/blog\/wp-json\/wp\/v2\/tags?post=111168"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}