jgptmem
v0.0.1
Published
The JGPTMem class is designed to handle chat interactions utilizing the OpenAI GPT-3.5 Turbo model, with a specific focus on managing a short-term memory. This memory is intended to continuously condense, update, and store interactions between the user an
Readme
JGPTMem Class
The JGPTMem class is designed to facilitate conversations with OpenAI's GPT-3.5-turbo model, while managing a short-term memory to provide a more context-aware interaction.
Requirements
- The
openaipackage. - Environment variables with the OpenAI API key and organization ID.
- Node.js version compatible with the
openaipackage.
Constructor: new JGPTMem(apiKey, orgId)
Create a new JGPTMem instance.
apiKey(String): The OpenAI API key.orgId(String): The organization ID.
Method: async talk(userInput)
Receives user input, constructs a prompt with short-term memory instructions, and returns the response from OpenAI's GPT-3.5-turbo model.
userInput(String): The user's question or command.
Returns
- (String): The response from OpenAI's model, formatted as
{"condensedMemory":condensedSummary, "response": "your answer"}.
Throws
- Error: If there's any error in processing the prompt or fetching the response.
Example Usage
const jgptMem = new JGPTMem(process.env.OPENAI_API_KEY, process.env.OPENAI_ORG_ID);
const userInput = "Tell me about the weather today";
jgptMem.talk(userInput).then(result => console.log(result));This code snippet creates an instance of JGPTMem, provides a user question, and prints the response.
Note
- Properly configure environment variables (
OPENAI_API_KEY,OPENAI_ORG_ID) in your.envfile. - The
talkmethod returns a Promise. Handle it appropriately in your code. - Error handling is crucial to manage unexpected responses or issues during execution.
- The class emphasizes the importance of continuously updating and condensing short-term memory without significant loss of data.
JGPTMem provides a sophisticated way to utilize OpenAI's GPT-3.5-turbo model for interactive conversations, considering previous interactions and maintaining a condensed short-term memory for more contextual responses.
