mistralai_client_dart 1.1.0 mistralai_client_dart: ^1.1.0 copied to clipboard
This is an unofficial Dart/Flutter client for the Mistral AI API.
Mistral AI client for Dart #
Description #
This is an unofficial Dart/Flutter client for the Mistral AI API.
Installation #
dart pub add mistralai_client_dart
Usage #
Create client #
import 'package:mistralai_client_dart/mistralai_client_dart.dart';
final client = MistralAIClient(apiKey: 'your api key here');
List models #
final modelsResult = await client.listModels();
final models = modelsResult.data?.map((e) => e.id).toList();
print(models?.join(', '));
Chat #
const request = ChatCompletionRequest(
model: 'mistral-small-latest',
messages: [
UserMessage(content: UserMessageContent.string('Hello chat!')),
],
);
final chatCompletion = await client.chatComplete(request: request);
final chatMessage = chatCompletion.choices?[0].message;
print(chatMessage?.content);
Chat stream #
final stream = client.chatStream(request: request);
await for (final completionChunk in stream) {
final chatMessage = completionChunk.choices[0].delta.content;
if (chatMessage != null) {
print(chatMessage);
}
}
Embeddings #
final embeddings = await client.createEmbeddings(
request: const EmbeddingRequest(
model: 'mistral-embed',
input: EmbeddingRequestInput.arrayString(['Hello chat!']),
),
);
for (final data in embeddings.data) {
print('Embeddings: ${data.embedding}');
}
Function calling #
Check examples:
Files #
Check examples:
Fine-tuning Jobs #
Check examples:
Fill in the middle completion #
Check examples:
Agents #
Check examples:
Moderation #
Check examples:
Resources #
You can check the official Mistral AI docs.
Contributing #
For contributing guide please see CONTRIBUTING.md.
Flutter Flow (deprecated) #
For Flutter Flow integration please use the mistralai_client_dart_flutter_flow package.
It's a version of this package that is adapted to work with Flutter Flow.
Aknowledgements #
Part of the code was generated thx to openapi_spec package.