Создать пакет сообщений
POST/v1/messages/batches
Отправьте пакет запросов на создание сообщений.
Message Batches API можно использовать для одновременной обработки нескольких запросов Messages API. После создания пакета сообщений его обработка начинается немедленно. Обработка пакетов может занимать до 24 часов.
Подробнее о Message Batches API читайте в нашем руководстве пользователя
Parameters
Returns
Создать пакет сообщений
using System;
using System.Collections.Generic;
using System.Text.Json;
using Messages = Anthropic.Models.Messages;
using Anthropic.Models.Messages.Batches;
BatchCreateParams parameters = new()
{
Requests =
[
new()
{
CustomID = "my-custom-id-1",
Params = new()
{
MaxTokens = 1024,
Messages =
[
new Messages::UserMessageParam("Hello, world")
],
Model = Messages::Model.ClaudeOpus5_5,
CacheControl = new() { Ttl = Messages::Ttl.Ttl5m },
Container = new Messages::ContainerParams()
{
ID = "id",
Skills =
[
new()
{
SkillID = "pdf",
Type = Messages::SkillParamsType.Anthropic,
Version = "latest",
},
],
},
Diagnostics = new()
{
PreviousMessageID = "previous_message_id"
},
InferenceGeo = "inference_geo",
Metadata = new()
{
UserID = "13803d75-b4b5-4c3e-b2a2-6f21399b021b"
},
OutputConfig = new()
{
Effort = Messages::Effort.Low,
Format = new()
{
Schema = new Dictionary<string, JsonElement>()
{
{ "foo", JsonSerializer.SerializeToElement("bar") }
},
},
},
ServiceTier = ServiceTier.Auto,
Speed = Speed.Standard,
StopSequences =
[
"string"
],
Stream = false,
System = new(
[
new Messages::TextBlockParam()
{
Text = "Today's date is 2024-06-01.",
CacheControl = new() { Ttl = Messages::Ttl.Ttl5m },
Citations =
[
new Messages::CitationCharLocationParam()
{
CitedText = "The grass is green. The sky is blue.",
DocumentIndex = 0,
DocumentTitle = "x",
EndCharIndex = 0,
StartCharIndex = 0,
},
],
},
]
),
Thinking = new Messages::ThinkingConfigAdaptive()
{
Display = Messages::Display.Summarized
},
ToolChoice = new Messages::ToolChoiceAuto()
{
DisableParallelToolUse = true
},
Tools =
[
new Messages::Tool()
{
InputSchema = new()
{
Properties = new Dictionary<string, JsonElement>()
{
{ "location", JsonSerializer.SerializeToElement("bar") },
{ "unit", JsonSerializer.SerializeToElement("bar") },
},
Required =
[
"location"
],
},
Name = "name",
AllowedCallers =
[
Messages::ToolAllowedCaller.Direct
],
CacheControl = new() { Ttl = Messages::Ttl.Ttl5m },
DeferLoading = true,
Description = "Get the current weather in a given location",
EagerInputStreaming = true,
InputExamples =
[
new Dictionary<string, JsonElement>()
{
{ "foo", JsonSerializer.SerializeToElement("bar") },
},
],
Strict = true,
Type = Messages::Type.Custom,
},
],
},
},
],
};
var messageBatch = await client.Messages.Batches.Create(parameters);
Console.WriteLine(messageBatch);Response 200
{
"id": "msgbatch_013Zva2CMHLNnXjNJJKqJ2EF",
"archived_at": "2024-08-20T18:37:24.100435Z",
"cancel_initiated_at": "2024-08-20T18:37:24.100435Z",
"created_at": "2024-08-20T18:37:24.100435Z",
"ended_at": "2024-08-20T18:37:24.100435Z",
"expires_at": "2024-08-20T18:37:24.100435Z",
"processing_status": "in_progress",
"request_counts": {
"canceled": 10,
"errored": 30,
"expired": 10,
"processing": 100,
"succeeded": 50
},
"results_url": "https://api.anthropic.com/v1/messages/batches/msgbatch_013Zva2CMHLNnXjNJJKqJ2EF/results",
"type": "message_batch"
}Returns Examples
Response 200
{
"id": "msgbatch_013Zva2CMHLNnXjNJJKqJ2EF",
"archived_at": "2024-08-20T18:37:24.100435Z",
"cancel_initiated_at": "2024-08-20T18:37:24.100435Z",
"created_at": "2024-08-20T18:37:24.100435Z",
"ended_at": "2024-08-20T18:37:24.100435Z",
"expires_at": "2024-08-20T18:37:24.100435Z",
"processing_status": "in_progress",
"request_counts": {
"canceled": 10,
"errored": 30,
"expired": 10,
"processing": 100,
"succeeded": 50
},
"results_url": "https://api.anthropic.com/v1/messages/batches/msgbatch_013Zva2CMHLNnXjNJJKqJ2EF/results",
"type": "message_batch"
}