ballerinax/openai.chat Ballerina library

1.0.1

Overview

This is a generated connector for the OpenAI Chat API OpenAPI Specification. OpenAI is an American artificial intelligence research laboratory consisting of a non-profit corporation and a for-profit subsidiary. OpenAI conducts AI research with the declared intention of promoting and developing friendly AI. The OpenAI Chat API provides a way to access the state-of-the-art ChatGPT model (GPT-3.5) developed by OpenAI for a variety of tasks.

Prerequisites

Before using this connector in your Ballerina application, complete the following:

Quick start

To use the OpenAI Chat connector in your Ballerina application, update the .bal file as follows:

Step 1: Import the connector

First, import the ballerinax/openai.chat module into the Ballerina project.

Copy
import ballerinax/openai.chat;
import ballerina/io;

Step 2: Create a new connector instance

Create and initialize a chat:Client with the obtained apiKey.

Copy
chat:Client chatClient = check new ({
    auth: {
        token: "sk-XXXXXXXXX"
    }
});

Step 3: Invoke the connector operation

  1. Now you can use the operations available within the connector.

Note: These operations are in the form of remote operations.

Following is an example on creating a conversation with the GPT-3.5 model:

Conversation with GPT-3.5-turbo

Copy
public function main() returns error? {
    chat:CreateChatCompletionRequest req = {
        model: "gpt-3.5-turbo",
        messages: [{"role": "user", "content": "What is Ballerina?"}]
    };
    chat:CreateChatCompletionResponse|error unionResult = check chatClient->/chat/completions.post(req);
    if unionResult is chat:CreateChatCompletionResponse {
        io:println(unionResult);
    } else {
        io:println(unionResult);
    }
}
  1. Use bal run command to compile and run the Ballerina program.

Sample

Copy
import ballerinax/openai.chat;
import ballerina/io;

chat:Client chatClient = check new ({
    auth: {
        token: "sk-XXXX"
    }
});

public function main(string[] arg) returns error? {
    chat:CreateChatCompletionRequest req = {
        model: "gpt-3.5-turbo",
        messages: [{"role": "user", "content": "What is Ballerina?"}]
    };
    chat:CreateChatCompletionResponse|error unionResult = check chatClient->/chat/completions.post(req);
    if unionResult is chat:CreateChatCompletionResponse {
        io:println(unionResult);
    } else {
        io:println(unionResult);
    }
}

Import

import ballerinax/openai.chat;Copy

Metadata

Released date: about 1 year ago

Version: 1.0.1

License: Apache-2.0


Compatibility

Platform: any

Ballerina version: 2201.4.0

GraalVM compatible: Yes


Pull count

Total: 3560

Current verison: 4


Weekly downloads


Source repository


Keywords

AI/OpenAI

Cost/Paid

ChatGPT

GPT-3.5


Contributors

Other versions

See more...