Documentation ¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type ChatPromptBuilder ¶
type ChatPromptBuilder interface { /* CreatePrompt build a complete prompt using the existing session exchanges, and the new request from the user. @param ctxt context.Context - query context @param session persistence.ChatSession - current chat session @param newRequest string - new user request @return complete prompt for the text completion model */ CreatePrompt( ctxt context.Context, session persistence.ChatSession, newRequest string, ) (string, error) }
ChatPromptBuilder construct a text completion prompt to send
func GetSimpleChatPromptBuilder ¶
func GetSimpleChatPromptBuilder() (ChatPromptBuilder, error)
GetSimpleChatPromptBuilder define a simple chat prompt builder
type ChatSessionHandler ¶
type ChatSessionHandler interface { /* SendRequest send a new request within the session @param ctxt context.Context - query context @param prompt string - the prompt to send @param resp chan string - channel for sending out the responses from the model */ SendRequest(ctxt context.Context, prompt string, resp chan string) error /* Close close this session @param ctxt context.Context - query context */ Close(ctxt context.Context) error }
ChatSessionHandler represents a chat session
func DefineChatSessionHandler ¶
func DefineChatSessionHandler( ctxt context.Context, session persistence.ChatSession, client Client, ) (ChatSessionHandler, error)
DefineChatSessionHandler create chat session tracker
@param ctxt context.Context - query context @param session persistence.ChatSession - chat session parameters @param client GPTClient - OpenAI GPT model API client @return new chat session tracker
type Client ¶
type Client interface { /* MakeCompletionRequest make a completion request to the model @param ctxt context.Context - query context @param session persistence.ChatSession - chat session parameters @param prompt string - the prompt to send @param resp chan string - channel for sending out the responses from the model */ MakeCompletionRequest( ctxt context.Context, session persistence.ChatSession, prompt string, resp chan string, ) error }
Client OpenAI model API client
func GetClient ¶
func GetClient( ctxt context.Context, user persistence.User, promptBuilder ChatPromptBuilder, ) (Client, error)
GetClient define new OpenA model API client
@param ctxt context.Context - query context @param user persistence.User - the user parameter @param promptBuilder ChatPromptBuilder - tool to construct a complete prompt for models whose input do not have a way to define user request and system response @return client
Click to show internal directories.
Click to hide internal directories.