flutter_ai_toolkit library
A library for integrating AI-powered chat functionality into Flutter applications.
This library provides a set of tools and widgets to easily incorporate AI language models into your Flutter app, enabling interactive chat experiences with various AI providers.
Key components:
- LLM providers: Interfaces and implementations for different AI services.
- Chat UI: Ready-to-use widgets for displaying chat interfaces.
Classes
- ActionButtonStyle
- Style for icon buttons.
- Attachment
- An abstract class representing an attachment in a chat message.
- ChatInputStyle
- Style for the input text box.
- ChatMessage
- Represents a message in a chat conversation.
- EchoProvider
- A simple LLM provider that echoes the input prompt and attachment information.
- FileAttachment
- Represents a file attachment in a chat message.
- FileAttachmentStyle
- Style for file attachments in the chat view.
- GeminiProvider
- A provider class for interacting with Google's Gemini AI language model.
- ImageFileAttachment
- Represents an image attachment in a chat message.
- LinkAttachment
- Represents a link attachment in a chat message.
- LlmChatView
- A widget that displays a chat interface for interacting with an LLM (Language Model).
- LlmChatViewStyle
- Style for the entire chat widget.
- LlmMessageStyle
- Style for LLM messages.
- LlmProvider
- An abstract class representing a Language Model (LLM) provider.
- SuggestionStyle
- A class that defines the style for suggestions.
- UserMessageStyle
- Style for user messages.
- VertexProvider
- A provider class for interacting with Firebase Vertex AI's language model.
Enums
- ActionButtonType
- Enum representing different types of action buttons in the chat view.
- MessageOrigin
- Represents the origin of a chat message.
Typedefs
-
LlmStreamGenerator
= Stream<
String> Function(String prompt, {required Iterable<Attachment> attachments}) - A function that generates a stream of text based on a prompt and attachments.