用于 ChatGPT 的非官方 .Net 客户端

我们发布了一个软件包,使用官方OpenAI API免费使用ChatGPT,没有速率限制[点击这里]

如需支持加入 [不和谐]

ChatGPT.Net - 用于 ChatGPT 的非官方 API 客户端 [Discord]

其他版本 [NodeJS 版本][Python 版本]

Nuget Package Nuget Package GitHub issues GitHub forks GitHub stars GitHub license Discord server

ChatGPT.Net ChatGPT 的非官方 .Net API 是一个 C# 库,允许开发人员访问 ChatGPT,一种基于聊天的语言模型。使用此 API,开发人员可以向 ChatGPT 发送查询并实时接收响应,从而轻松地将 ChatGPT 集成到自己的应用程序中。

using ChatGPT.Net;

var chatGpt = new ChatGpt();
await chatGpt.WaitForReady();
var chatGptClient = await chatGpt.CreateClient(new ChatGptClientConfig
{
    SessionToken = "eyJhbGciOiJkaXIiLCJlbmMiOiJBMjU2......."
});
var response = await chatGptClient.Ask("What is the weather like today?");
Console.WriteLine(response);

特征

  • 不使用浏览器的新方法。
  • 使用 SessionToken 自动登录 ChatGPT。
  • 绕过云耀斑保护和虚假速率限制保护。
  • 重置对话或创建多个对话的功能。
  • 自动刷新 ChatGPT 访问令牌。
  • 默认情况下启用缓存系统,缓存数据保存到 cache.json 以减少对 ChatGPT 端点的请求并降低速率限制。

新方法如何在没有浏览器的情况下工作?

新方法通过利用已实现绕过方法的服务器作为代理运行,无需浏览器即可运行。该库将请求发送到服务器,然后服务器将请求重定向到 ChatGPT,同时绕过 Cloudflare 和其他机器人检测措施。然后,服务器返回 ChatGPT 响应,确保即使 ChatGPT 实施更改以防止机器人使用,该方法仍然有效。我们的服务器会不断更新以保持其旁路功能。

开始

若要安装 ChatGPT.Net,请在程序包管理器控制台中运行以下命令:

Install-Package ChatGPT.Net

或者,可以使用 .NET Core 命令行界面安装它:

dotnet add package ChatGPT.Net

用法

下面是一个示例代码,演示如何使用 ChatGPT.Net:

using ChatGPT.Net;

var chatGpt = new ChatGpt(new ChatGptConfig  
{  
    UseCache = true  
});
await chatGpt.WaitForReady();
var chatGptClient = await chatGpt.CreateClient(new ChatGptClientConfig
{
    SessionToken = "eyJhbGciOiJkaXIiLCJlbmMiOiJBMjU2.......",  
    AccountType = AccountType.Free
});
var conversationId = "a-unique-string-id";
var response = await chatGptClient.Ask("What is the weather like today?", conversationId);
Console.WriteLine(response);

await chatGptClient.ResetConversation(conversationId);


var chatGptClient2 = await chatGpt.CreateClient(new ChatGptClientConfig
{
    SessionToken = "eyJhbGciOiJkaXIiLCJlbmMiOiJBMjU2.......",  
    AccountType = AccountType.Pro
});
var response2 = await chatGptClient2 .Ask("What is the weather like today?");
Console.WriteLine(response2);

上面的代码演示了如何使用 ChatGPT.Net 库同时创建多个 ChatGPT 客户端和对话并与之交互。

该类用于初始化 ChatGPT 库并等待它准备就绪。然后调用该方法以使用指定的配置创建新客户端。ChatGptCreateClient

创建客户端后,可以调用该方法向 ChatGPT 发送消息并接收响应。该参数是可选的,可用于指定消息应发送到的会话。如果未提供会话 ID,则将使用默认对话 ID。AskconversationId

该方法可用于重置与特定客户端关联的特定会话。这允许客户端用于与 ChatGPT 开始新的对话,就像第一次使用客户端一样。ResetConversation

可以创建多个 ChatGPT 客户端并用于同时管理多个帐户。请务必注意,配置中的 必须是有效的令牌,才能成功进行身份验证和使用 ChatGPT 服务。SessionToken

该类的文档:ChatGptConfig

性能

UseCache(布尔)

如果 ,客户端将在生成新响应之前检查响应缓存。如果 ,客户端将始终生成新的响应。truefalse

SaveCache(布尔)

如果 ,客户端将在生成响应后将响应保存到工作目录中的缓存文件 ()。如果为 ,客户端将不会保存对缓存的响应。truecache.jsonfalse

该类的文档:ChatGptClientConfig

性能

SessionToken(字符串)

此属性指定聊天 GPT 帐户的会话令牌。

AccountType(账户类型)

此属性指定 ChatGPT 帐户类型(免费或专业)。



下载地址:GitHub - PawanOsman/ChatGPT.Net:用于 ChatGPT 的非官方 .Net 客户端

评论