mistralai_client_dart 1.1.0 copy "mistralai_client_dart: ^1.1.0" to clipboard
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 #

.github/workflows/check.yaml style: very good analysis

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.