ChatGPT:用各种语言调用ChatGPT

作者: cnpim CNPIM 2023年06月09日

问1:

如何用delphi调用ChatGPT接口

答1:

uses  IdHTTP, System.JSON;function GetChatGPTResponse(const Query: string): string;var  IdHTTP: TIdHTTP;begin  IdHTTP := TIdHTTP.Create(nil);  try    Result := IdHTTP.Get('https://api.openai.com/v1/engines/davinci-codex/completions?prompt=' + Query);  finally    IdHTTP.Free;  end;end;function GetChatGPTText(const Query: string): string;var  JSONValue: TJSONValue;begin  Result := '';  try    JSONValue := TJSONObject.ParseJSONValue(GetChatGPTResponse(Query));    if JSONValue is TJSONObject then      Result := TJSONObject(JSONValue).GetValue('choices').Items[0].GetValue('text').Value;  except    // 异常处理  end;end;

使用 GetChatGPTText 函数传入一个问题字符串,将返回 ChatGPT 的响应,您可以将其输出到控制台或将其显示在 GUI 窗口中。

请注意,此代码仅是示例,您需要根据您的需要进行修改,以处理不同类型的响应,包括错误处理和身份验证。

问2:

如何用C#调用ChatGPT              (使用到了.net core的类库)

答2:

using System;using System.Net.Http;using System.Text.Json;class ChatGPT{    static async void GetChatGPTResponse(string query)    {        using (var httpClient = new HttpClient())        {            var url = "https://api.openai.com/v1/engines/davinci-codex/completions?prompt=" + query;            using (var response = await httpClient.GetAsync(url))            {                string responseContent = await response.Content.ReadAsStringAsync();                // 解析响应,获取返回的文本                var document = JsonDocument.Parse(responseContent);                var text = document.RootElement.GetProperty("choices")[0].GetProperty("text").GetString();                Console.WriteLine(text);            }        }    }    static void Main(string[] args)    {        GetChatGPTResponse("Hello, ChatGPT!");    }}

使用 GetChatGPTResponse 方法传入一个问题字符串,将返回 ChatGPT 的响应,您可以将其输出到控制台或将其显示在 GUI 窗口中。

请注意,此代码仅是示例,您需要根据您的需要进行修改,以处理不同类型的响应,包括错误处理和身份验证。

问3:
如何用C# .net framework 调用ChatGPT

答3:

要使用 .NET Framework 调用 ChatGPT 接口,您可以使用 System.Net.WebClient 类或 System.Net.HttpWebRequest 类将数据发送到 ChatGPT 的 API 终点,然后解析响应。以下是一个使用 System.Net.WebClient 类的简单示例:
using System;using System.Net;using System.IO;using Newtonsoft.Json.Linq;class ChatGPT{    static void Main(string[] args)    {        string query = "Hello, ChatGPT!";        string url = "https://api.openai.com/v1/engines/davinci-codex/completions?prompt=" + query;        using (var client = new WebClient())        {            client.Headers.Add("Content-Type:application/json");            client.Headers.Add("Authorization: Bearer YOUR_API_KEY");            string response = client.DownloadString(url);            JObject jsonObject = JObject.Parse(response);            string text = jsonObject["choices"][0]["text"].ToString();            Console.WriteLine(text);        }    }}
在此示例中,我们首先定义了一个查询字符串和 API 终点 URL。然后,我们使用 WebClient 类来创建一个 HTTP 请求,并设置请求头以包括身份验证信息。发送请求后,我们从响应字符串中解析出所需的文本,然后将其输出到控制台。请注意,您需要将 YOUR_API_KEY 替换为您的 OpenAI API 密钥。您也可以使用 System.Net.HttpWebRequest 类发送 HTTP 请求,以下是一个简单的示例:
using System;using System.IO;using System.Net;using Newtonsoft.Json.Linq;class ChatGPT{    static void Main(string[] args)    {        string query = "Hello, ChatGPT!";        string url = "https://api.openai.com/v1/engines/davinci-codex/completions?prompt=" + query;        HttpWebRequest request = (HttpWebRequest)WebRequest.Create(url);        request.Headers["Authorization"] = "Bearer YOUR_API_KEY";        HttpWebResponse response = (HttpWebResponse)request.GetResponse();        using (StreamReader reader = new StreamReader(response.GetResponseStream()))        {            string json = reader.ReadToEnd();            JObject jsonObject = JObject.Parse(json);            string text = jsonObject["choices"][0]["text"].ToString();            Console.WriteLine(text);        }    }}


本文阅读量:

声明:本信息来源于网络,仅用于学习和技术交流,如有侵权或其他问题,请联系本站处理。

技术支持:CNPIM.COM