Search  
Always will be ready notify the world about expectations as easy as possible: job change page
Jan 28, 2023

Adding ChatGPT to your .NET 7 application

Author:
Rokas
Source:
Views:
3305

Prerequisites: VSCode and .Net 7 installed. Don't need to copy the code, GitHub link provided in the end.

Open up a terminal in VSCode or any IDE of your choice, run:

dotnet new console

2 files will appear, default Program.cs and .csproj named according to your folder:

Now let's create a file called OpenAIResponse.cs and start filling in the objects.


Main response object


Text response and usage objects

We will use these objects to translate the open AI response to C# object oriented language.

Time to call the API!

Get your API Key from https://beta.openai.com/account/api-keys

Create new secret key, copy & paste it into the project.

Now let's set up the main function:


The entire function to call Open AI

Let's go through each part, firstly lets look at the function signature:


Function signature

Open AI requires a fairly large amount of settings to be specified in order to provide us with the expected result, we are passing them through the function signature, the comments explain each individual parameter.


Setup for the request

Then we have the setup for the request, essentially the request requires:

  • The API Key (used for authorization).
  • The Call URL (used to direct the request).
  • The Content (used to setup the parameters of the request).


Parse the response

After the setup we just send the request and read it into our prepared class.

Alright, everything is set up, let's call it! (Don't forget to set the API Key to yours)


The default playground settings

Now in your terminal just run:

dotnet run

And after inputting a question you should receive an answer.

You can find all the source files here: https://github.com/RokasMarcinkevicius/ChatGPT

Similar
Nov 11
Author: Jeslur Rahman
SOLID principles make it easy for a developer to write easily extendable code and avoid common coding errors. These principles were introduced by Robert C. Martin, and they have become a fundamental part of object-oriented programming. In the context of...
Dec 23, 2023
Author: Matt Bentley
A guide to implementing value objects — Domain-Driven Design’s most powerful, yet least understood and utilized building block Generated using DALL-E 3 Value Objects are one of the most powerful building blocks in Domain-Driven Design for creating rich models, however...
Jun 2, 2023
Cyclomatic complexity is a code metric (integer value 1 or more) used to measure how complex a function/method is. It does not take into account lines of code but instead considers complexity to be the distinct paths through a function....
Apr 16, 2022
Author: Mohsen Saniee
Today, developers are paying more attention to mapping libraries than ever before, because modern architecture forces them to map object to object across layers. For example, in the past I prepared a repository for clean architecture in github. So it’s...
Send message
Type
Email
Your name
*Message