AI Chat

This guide covers how to create and manage chat threads using FreeToken's message & thread capabilities. Chat threads allow for dynamic, context-aware conversations with AI models, making them ideal for applications like customer support, virtual assistants, and interactive storytelling.

Creating a Message Thread

import FreeToken

// Assumes you have already set up your FreeToken configuration

FreeToken.shared.createMessageThread(
    success: { thread in
        print("Created thread with ID: \(thread.id)")
    },
    error: { err in
        print("Error creating thread: \(err.localizedDescription)")
    }
)

Adding Messages to a Thread

import FreeToken

// Assumes you have already set up your FreeToken configuration

let message = FreeToken.Message(role: .user, content: "What is the weather like in San Francisco today?")

FreeToken.shared.addMessageToThread(
    id: "your-thread-id", // Replace with your actual thread ID
    message: message,
    success: { message in
        print("Added message with ID: \(message.id)")
    },
    error: { err in
        print("Error adding message: \(err.localizedDescription)")
    }
)

Running a Message Thread

import FreeToken

// Assumes you have already set up your FreeToken configuration

FreeToken.shared.runMessageThread(
    id: "your-thread-id", // Replace with your actual thread ID
    success: { response in
        print("AI Response: \(response.text)")
    },
    error: { err in
        print("Error during chat: \(err.localizedDescription)")
    }
)


Deleting a Message Thread

import FreeToken

// Assumes you have already set up your FreeToken configuration

FreeToken.shared.deleteMessageThread(
    id: "your-thread-id", // Replace with your actual thread ID
    success: {
        print("Thread deleted successfully")
    },
    error: { err in
        print("Error deleting thread: \(err.localizedDescription)")
    }
)