OkGoDoIt / OpenAI-API-dotnet

An unofficial C#/.NET SDK for accessing the OpenAI GPT-3 API
https://www.nuget.org/packages/OpenAI/
Other
1.83k stars 427 forks source link

✨ Alternative implementations also available #178

Open lofcz opened 10 months ago

lofcz commented 10 months ago

As this library is still lacking functions, assistants, and complete dependency injection support, here are some other community-maintained forks which may be better suited for your project:

OpenAi-DotNet - frequently updated library by @StephenHodgson, comes with a comprehensive tests suite, documentation and Unity support. LLmTornado - .NET 8+ implementation supporting OpenAI, Cohere, Anthropic, Google and self-hosted providers. OpenAiAudioAndMisc by @LeeLorenzSr (outdated) (This is ordered by ⭐ at the time of the last update)

I'm very grateful to @OkGoDoIt for creating and maintaining the OG library for everyone to use. All projects listed started as forks of OpenAI-API-dotnet and wouldn't be where they are without it.

brondavies commented 10 months ago

Thank you!

StephenHodgson commented 10 months ago

I'll also do a shameless self-promotion

https://github.com/RageAgainstThePixel/OpenAI-DotNet

lofcz commented 10 months ago

@StephenHodgson I've added your library in the fork annoucement, if you would like to share any features your library offer, please update your comment and I will update the annoucement accordingly. For me, this is about offering an updated implementation for users and the more options are out there, the better. I'm really glad you've mentioned your library.

StephenHodgson commented 10 months ago

I guess the only real difference is the lack of support for KoboldCpp. I also have a proxy API gateway companion package. I also made sure it has absolutely no dependencies on anything. I've got everything updated for the dev days api release so far except for agents and threading. (Maybe I'll knock it out this weekend) I made this a long time ago to help my friend to bring a microwave to life 😂

Magnatron

I also support the Unity game engine Integration and keep both package highly aligned and up to date.

https://github.com/RageAgainstThePixel/com.openai.unity

LeeLorenzSr commented 9 months ago

Here I was, doing the same thing with my fork. Sigh... Thanks. https://github.com/LeeLorenzSr/OpenAI-API-dotnet/tree/AudioAndOtherFeatures I'll probably stick with my changes. I still need to add the new chat models, but image and audio support is pretty much done.

StephenHodgson commented 9 months ago

Just got done with threads and assistants. Wow that was a lot of work!

https://github.com/RageAgainstThePixel/OpenAI-DotNet/releases/tag/v7.3.0

OkGoDoIt commented 8 months ago

Hey all, sorry I've been a bit behind the past 6 months. I was starting a new AI company Doppler so I let things slide on here. But this past week I've been going through updating this library, adding features, fixing bugs, and getting it back to good condition.

With my newly released v1.10, I've updated the models to be current as of December 13, 2023, including the new GPT-4 Vision, GPT-4 Turbo, and DALL-E 3. Added text-to-speech as well as audio transcriptions and translations (Whisper). Also added json result format and fixed a chat result streaming bug #184.

I have not added functions or assistants yet. I haven't figured out a good way to do functions that's not more hassle than it's worth yet. Anyone have any recommendations as to how other libraries have handled functions gracefully?

I'm still proudly supporting .NET Standard 2.0, including the old-fashioned .NET Framework, Unity, Xamarin, etc. I keep dependencies to a minimum and I've licensed it CC-0 (public domain), which is the most permissive license possible. I hope you can still find value in this library.

But also some of these other libraries are likely better in some scenarios, depending on what people want. So I'll edit the initial issue text to turn it more into a summary of alternatives. Thank you @lofcz, @StephenHodgson, @LeeLorenzSr.

lofcz commented 8 months ago

@OkGoDoIt Glad to hear the OG library is still actively maintained, especially for the .NET Standard 2.0 folks. I'll try to port the function calling upstream. Congrats on founding Doppler!