MistralClient.API.Classifiers (mistralex_ai v0.1.0)
View SourceClassifiers API for text classification and content moderation.
This module provides functions for:
- Text moderation and safety classification
- Chat conversation moderation
- General text classification
- Chat conversation classification
Examples
# Text moderation
{:ok, response} = MistralClient.API.Classifiers.moderate(
client,
"mistral-moderation-latest",
["This is some text to moderate"]
)
# Chat moderation
{:ok, response} = MistralClient.API.Classifiers.moderate_chat(
client,
"mistral-moderation-latest",
[[%{role: "user", content: "Hello, how are you?"}]]
)
# Text classification
{:ok, response} = MistralClient.API.Classifiers.classify(
client,
"mistral-classifier-latest",
["Text to classify"]
)
# Chat classification
{:ok, response} = MistralClient.API.Classifiers.classify_chat(
client,
"mistral-classifier-latest",
[%{messages: [%{role: "user", content: "Hello"}]}]
)
Summary
Functions
Classifications - Classify text into categories.
Chat Classifications - Classify chat conversations into categories.
Moderations - Analyze text for safety and content policy violations.
Chat Moderations - Analyze chat conversations for safety and content policy violations.
Functions
@spec classify( MistralClient.Client.t() | MistralClient.Config.t(), String.t(), String.t() | [String.t()] ) :: {:ok, MistralClient.Models.ClassificationResponse.t()} | {:error, term()}
Classifications - Classify text into categories.
Parameters
client
- The client configurationmodel
- ID of the model to useinputs
- Text to classify (string or list of strings)
Returns
{:ok, ClassificationResponse.t()}
on success{:error, term()}
on failure
Examples
{:ok, response} = MistralClient.API.Classifiers.classify(
client,
"mistral-classifier-latest",
"This is some text to classify"
)
{:ok, response} = MistralClient.API.Classifiers.classify(
client,
"mistral-classifier-latest",
["Text 1", "Text 2", "Text 3"]
)
@spec classify_chat(MistralClient.Client.t() | MistralClient.Config.t(), String.t(), [ map() ]) :: {:ok, MistralClient.Models.ClassificationResponse.t()} | {:error, term()}
Chat Classifications - Classify chat conversations into categories.
Parameters
client
- The client configurationmodel
- ID of the model to useinputs
- Chat conversations to classify
Returns
{:ok, ClassificationResponse.t()}
on success{:error, term()}
on failure
Examples
{:ok, response} = MistralClient.API.Classifiers.classify_chat(
client,
"mistral-classifier-latest",
[%{messages: [%{role: "user", content: "Hello"}]}]
)
@spec moderate( MistralClient.Client.t() | MistralClient.Config.t(), String.t(), String.t() | [String.t()] ) :: {:ok, MistralClient.Models.ModerationResponse.t()} | {:error, term()}
Moderations - Analyze text for safety and content policy violations.
Parameters
client
- The client configurationmodel
- ID of the model to use (e.g., "mistral-moderation-latest")inputs
- Text to classify (string or list of strings)
Returns
{:ok, ModerationResponse.t()}
on success{:error, term()}
on failure
Examples
{:ok, response} = MistralClient.API.Classifiers.moderate(
client,
"mistral-moderation-latest",
"This is some text to moderate"
)
{:ok, response} = MistralClient.API.Classifiers.moderate(
client,
"mistral-moderation-latest",
["Text 1", "Text 2", "Text 3"]
)
@spec moderate_chat(MistralClient.Client.t() | MistralClient.Config.t(), String.t(), [ [map()] ]) :: {:ok, MistralClient.Models.ModerationResponse.t()} | {:error, term()}
Chat Moderations - Analyze chat conversations for safety and content policy violations.
Parameters
client
- The client configurationmodel
- ID of the model to useinputs
- Chat conversations to classify (list of message lists)
Returns
{:ok, ModerationResponse.t()}
on success{:error, term()}
on failure
Examples
{:ok, response} = MistralClient.API.Classifiers.moderate_chat(
client,
"mistral-moderation-latest",
[
[
%{role: "user", content: "Hello"},
%{role: "assistant", content: "Hi there!"}
]
]
)