Bibliothèque client API OpenAI pour .NET. Il prend en charge les API Openai et Azure-Openai. Cette bibliothèque a été développée pour l'utilisation du public et elle est gratuite. Versions .NET pris en charge:
x> = v4.6.1,
x> = netstandard 2.0,
x> = dotnetcore 3.1,
.Net 6.0,
.NET 7.0
.NET 8.0
Fonctionne avec Blazor WebAssembly et Blazor Server.
Pour installer le package, ajoutez la ligne suivante à votre fichier csproj remplaçant XXX par le dernier numéro de version:
<PackageReference Include="Forge.OpenAI" Version="x.x.x" />
Vous pouvez également installer via le CLI .NET avec la commande suivante:
dotnet add package Forge.OpenAI
Si vous utilisez Visual Studio, vous pouvez également installer via le gestionnaire de package NuGet intégré.
Vous devriez créer un apikey pour travailler avec l'API OpenAI.
Si vous n'avez pas de compte à Openai, créez-en un ici: https://platform.openai.com/
Que naviguer vers: https://platform.openai.com/account/api-Keys
Par défaut, cette bibliothèque utilise l'injection de dépendance Microsoft, mais elle n'est pas nécessaire.
Vous pouvez enregistrer les services clients avec la collection de services dans votre fichier startup.cs / programme.cs dans votre application.
public void ConfigureServices ( IServiceCollection services )
{
services . AddForgeOpenAI ( options => {
options . AuthenticationInfo = Configuration [ " OpenAI:ApiKey " ] ! ;
} ) ;
}Ou dans votre fichier programme.cs .
public static async Task Main ( string [ ] args )
{
var builder = WebAssemblyHostBuilder . CreateDefault ( args ) ;
builder . RootComponents . Add < App > ( " app " ) ;
builder . Services . AddForgeOpenAI ( options => {
options . AuthenticationInfo = builder . Configuration [ " OpenAI:ApiKey " ] ! ;
} ) ;
await builder . Build ( ) . RunAsync ( ) ;
}Ou
public static async Task Main ( string [ ] args )
{
using var host = Host . CreateDefaultBuilder ( args )
. ConfigureServices ( ( builder , services ) =>
{
services . AddForgeOpenAI ( options => {
options . AuthenticationInfo = builder . Configuration [ " OpenAI:ApiKey " ] ! ;
} ) ;
} )
. Build ( ) ;
}Vous devez fournir votre clé API OpenAI et éventuellement votre organisation pour démarrer le service. Si vous ne le fournissez pas dans la configuration, le service recherche automatiquement les informations nécessaires dans vos variables d'environnement, dans un fichier JSON (.openai) ou dans un fichier d'environnement (.env).
Exemple pour les variables d'environnement:
Openai_key ou openai_api_key ou openai_secret_key ou test_openai_secret_key sont vérifiés pour la clé de l'API
Clé d'organisation vérifiée pour l'organzation
Exemple pour le fichier JSON:
{"apikey": "your_api_key", "organisation": "organisation_id"}
Le fichier d'environnement doit contenir des paires de clés / valeur dans ce format {key} = {valeur}
Pour la « clé », utilisez l'une des mêmes valeurs décrites dans les variables d'environnement ci-dessus.
Exemple de fichier environnement:
Openai_key = your_api_key
Organisation = PORTIONALEMENT_YOUR_ORNANISATION
OpenAI et les services dépendants nécessitent des OpenAioptions, qui peuvent être fournies manuellement ou si vous utilisez une injection de dépendance. Si vous devez utiliser plusieurs instances de service OpenAI en même temps, vous devez fournir ces options individuellement avec différents paramètres et informations d'authentification.
Dans les options, il existe de nombreux paramètres d'URI, qui n'ont pas été touchés normalement. L'option la plus importante est la propriété AuthenticationInfo, qui contient l'ID apikey et et l'organisation.
En outre, il existe une option supplémentaire, appelée HttpMessageHandlerFactory, qui construit le httpMessageHandler pour le HTTPClient dans certains cas spéciaux, par exemple, si vous souhaitez remplacer un comportement du HTTPClient.
Il existe une fonction de journalisation intégrée, juste à des fins de test et de débogage, appelées logRequestSandResponsses, qui persistent toutes les demandes et réponses dans un dossier (logRequestSandResponsSefolder). Avec cette fonctionnalité, vous pouvez vérifier les messages de bas niveau. Je ne recommande pas de l'utiliser dans un environnement de production.
Si vous souhaitez en savoir plus sur les capacités de l'API, veuillez visiter https://platform.openai.com/docs/api-reference si vous avez besoin de générer une clé API, veuillez visiter: https://platform.openai.com/account/api- keys
J'ai créé un terrain de jeu, qui fait partie de cette solution. Il couvre toutes les fonctionnalités, que cette bibliothèque fournit. N'hésitez pas à parcourir ces exemples et à jouer avec les paramètres.
Voici également l'Openai Playground, où vous pouvez également trouver des exemples sur l'utilisation: https://platform.openai.com/playground/p/default-chat?lang=node.js&mode=compte&model=text-davinci-003
Configurez le service avec le fournisseur Azure-Openai, vous devez spécifier le nom de votre ressource Azure Openai ainsi que votre ID de déploiement de modèle.
Prérequis: https://learn.microsoft.com/en-us/azure/cognititive-services/openai/quickstart?tabs=Command-line&pivots=programming-anguage-studio Documentation: https://learn.microsoft.com/en-usure/cognitive
Exemple: https://github.com/jzo001/forge.openai/blob/main/playgrounds/azure-openai_setup_example/program.cs