aiqinxuancai / ChatGPTSharp

This project implements ChatGPT continuous dialogue based on ConversationId, which can be quickly integrated with just a few lines of code. It supports models such as gpt-4, gpt-3.5-turbo, and text-davinci-003.
MIT License
28 stars 4 forks source link
chatgpt chatgpt-api gpt gpt-3 gpt-4 openai

ChatGPTSharp

This project implements ChatGPT continuous dialogue based on ConversationId, which can be quickly integrated with just a few lines of code. It supports models such as gpt-4, gpt-4-vision-preview and gpt-3.5-turbo.

中文

Getting Started

ChatGPTSharp is available as NuGet package.

Use ConversationId for continuous conversations.

ChatGPTClientSettings settings = new ChatGPTClientSettings();
settings.OpenAIToken = File.ReadAllText("KEY.txt");
settings.ModelName = "gpt-4-vision-preview";
settings.ProxyUri = "http://127.0.0.1:1081";

var client = new ChatGPTClient(settings);
client.IsDebug = true;

var ChatImageModels = new List<ChatImageModel>()
{
    ChatImageModel.CreateWithFile(@"C:\Users\aiqin\Pictures\20231221155547.png", ImageDetailMode.Low)
};

var systemPrompt = "";
var msg = await client.SendMessage("Please describe this image", systemPrompt: systemPrompt, images: ChatImageModels);
Console.WriteLine($"{msg.Response}  {msg.ConversationId}, {msg.MessageId}");
msg = await client.SendMessage("Have you eaten today?", msg.ConversationId, msg.MessageId);
Console.WriteLine($"{msg.Response}  {msg.ConversationId}, {msg.MessageId}");

Update

2.0.0 20231221

1.1.4 20230711

1.1.3 20230508

1.1.2 20230429

Changelog for earlier versions. ### 1.1.0 20230320 * The initialization method of ChatGPTClient adds a request timeout setting and changes the default timeout time from 20 seconds to 60 seconds. ### 1.0.9 20230307 * Using TiktokenSharp to calculate token count, fixing the issue of inaccurate token calculation. ### 1.0.8 20230304 * token algorithm fix ### 1.0.6 20230303 * The token algorithm has been temporarily removed, which may cause exceptions when certain strings are combined. It will be restored after subsequent testing is completed. ### 1.0.5 20230303 * Add SendMessage parameters sendSystemType and sendSystemMessage to specify the insertion of system messages into the conversation. ### 1.0.3 20230302 * Add local token algorithm of gpt3, the algorithm is from js library gpt-3-encoder

This code base references node-chatgpt-api