ChatGPT API. Generowanie treści związanej z tworzeniem bądź manipulacją kodu

ChatGPT API. Generowanie treści związanej z tworzeniem bądź manipulacją kodu
Znacie już podstawy ChatGPT API i praktyczne przykłady związane z generowaniem za jego pomocą tekstu. A co z generowaniem kodu?

O dziwo, co jest miłym zaskoczeniem, wykorzystując sztuczną inteligencję, możemy wskazać nie tylko bezpośrednio stworzony przez nas fragment kodu; AI daje nam możliwość przekształcenia treści napisanej językiem naturalnym w gotowe fragmenty kodu programistycznego. Daje to pole do popisu i szerokie spektrum wsparcia dla m.in. programistów, którzy mogą korzystać z AI przykładowo przekształcając daną część specyfikacji w gotowe fragmenty kodu, które później mogą zostać bardziej rozbudowane. Prowadzi to do oszczędności czasu, co pozytywnie może wpłynąć na realizowane zadania.

Przykład zapytania:

przyklad-zapytania-chatgpt-kod.jpg

Przykładowy fragment odpowiedzi:

Here's an example of a JavaScript login function that validates email and password fields for three user accounts:

przykladowy-fragment-odpowiedzi-chatgpt-kod.jpgTo use this function, you can call it with the email and password values as arguments:

przykladowy-fragment-odpowiedzi-chatgpt-kod2.jpgNote that this is a simple example, and in a real-world scenario, you would want to use more secure authentication methods than storing passwords in plain text

Oczywiście jest to prosty przykład, a samo AI wskazuje nam potencjalny problem związany z bezpieczeństwem, który musimy wziąć pod uwagę podczas refaktoryzacji kodu do bardziej realnego wykorzystania. Tym samym możemy dla przykładu wykorzystać wygenerowany fragment kodu w celu odbicia piłeczki i wskazania AI - niczym programiście - potencjalnych problemów związanych z bezpieczeństwem i poprosić o refaktoryzację kodu, z uwzględnieniem bardziej zabezpieczonej autentykacji.

Przykład zapytania:

przyklad-zapytania-chatgpt-kod-2.jpg

Przykładowy fragment odpowiedzi:

To supplement validation with more secure authentication, one way is to use a hashing algorithm to store the passwords instead of storing them in plain text. Here's a refactored version of the code that uses the bcrypt hashing algorithm for password storage and authentication:

przykladowy-fragment-odpowiedzi-chatgpt-kod3.jpgIn this refactored version, the users array now stores password hashes instead of plain text passwords. When the script is run, each password is hashed using the bcrypt.hashSync() function and the resulting hash is stored in the passwordHash field of each user object.

When a user attempts to log in, the script first finds the user object with the matching email address. If the user exists and the password provided by the user matches the stored password hash (using bcrypt.compareSync()), then the user is authenticated and a welcome message is returned. Otherwise, an "Incorrect email or password" message is returned.

Podsumowując wykonaną przez AI pracę, można powiedzieć, że wygenerowany wynik w pierwszym przykładzie nie był wysokiej klasy fragmentem kodu. Natomiast podczas wskazywania instrukcji możemy być już bardziej precyzyjni i gdy wskazujemy wymagania względem naszych celów, możemy podać dodatkowe warunki. Sprawi to, że w rezultacie otrzymamy odpowiedź bardziej dopasowaną, a z czasem i samo AI będzie nam wskazywało lepsze wyniki.

Poprzedni wpis, w którym przestawiliśmy generowanie treści związanej z tworzeniem tekstu, znajdziecie tutaj.

Źródła:
https://openai.com/
https://chat.openai.com/chat
https://platform.openai.com/docs/api-reference/introduction
https://openai.com/product/dall-e-2
https://labs.openai.com/
https://curl.se/
https://developer.zendesk.com/documentation/api-basics/getting-started/about-the-zendesk-developer-platform/
https://www.npmjs.com/package/openai
https://github.com/openai/openai-openapi
https://dev.to/canuto/how-to-use-chatgpt-to-make-an-instantly-deployable-nodejs-rest-api-backend-2j6n

To powinno Cię zainteresować