ModelsLab
Generate images, video, speech and music, and run LLM chat, across 10,000+ models on ModelsLab.
我该使用它吗
质量与安全性
发现(22)
- LOW在 list-models 中
- LOW在 list-providers 中
- LOW在 text-to-image 中
- LOW在 image-to-image 中
- LOW在 inpaint-image 中
- LOW在 fetch-image 中
- LOW在 text-to-video 中
- LOW在 image-to-video 中
- LOW在 video-to-video 中
- LOW在 lip-sync 中
基于对工具定义和协议合规性的自动分析。
上下文开销
这是每次将服务器的工具加载到模型上下文窗口时所消耗的大致 token 数。数值越高,可用于其他任务的注意力就越少。
安装
一键安装
将以下内容添加到你的 `claude_desktop_config.json` 文件中:
{
"mcpServers": {
"modelslab": {
"url": "https://modelslab.com/mcp/v7"
}
}
}远程端点
https://modelslab.com/mcp/v7streamable-http它能做什么
工具清单
工具(23)
🟢list-models(feature, category, subcategory, provider, search, ...)
List available AI models on the ModelsLab platform. Filter by category (imagen, video, audio, llm, 3d), provider, tags, and more. Returns model IDs that can be used with generation tools.
输入模式
{
"type": "object",
"properties": {
"feature": {
"description": "Filter by product feature: \"imagen\" (images), \"videofusion\" (videos), \"audiogen\" (audio/voice), \"llmaster\" (LLMs), \"threedverse\" (3D).",
"type": "string"
},
"category": {
"description": "Filter by model category (e.g., \"stable_diffusion\", \"stable_diffusion_xl\", \"flux\", \"llm\", \"video\", \"voice_cloning\").",
"type": "string"
},
"subcategory": {
"description": "Filter by model subcategory (e.g., \"lora\", \"controlnet\", \"embeddings\", \"checkpoint\").",
"type": "string"
},
"provider": {
"description": "Filter by model provider (e.g., \"modelslab\", \"civitai\").",
"enum": [
"alibaba_cloud",
"bfl",
"byteplus",
"elevenlabs",
"google",
"groq",
"higgsfield",
"inworld",
"klingai",
"ltx",
"minimax",
"modelslab",
"mulerouter",
"open_router",
"openai",
"recraft",
"runway_ml",
"skyreels",
"sonauto",
"sync",
"tencent",
"together_ai",
"vidu",
"xai",
"zoho"
],
"type": "string"
},
"search": {
"description": "Search models by name, ID, description, or tags.",
"type": "string"
},
"nsfw": {
"description": "Set to false to exclude NSFW models, true to include them. Defaults to user preference.",
"type": "boolean"
},
"sort": {
"description": "Sort order: \"recommended\" (default), \"latest\", \"most-used\".",
"default": "recommended",
"type": "string"
},
"limit": {
"description": "Maximum number of models to return (1-100).",
"default": 20,
"type": "integer"
}
}
}🟢list-providers(feature, category)
List all available model providers on the ModelsLab platform. Returns provider names with model counts for each. Use provider names to filter models in the list-models tool.
输入模式
{
"type": "object",
"properties": {
"feature": {
"description": "Filter providers by product feature: \"imagen\" (images), \"videofusion\" (videos), \"audiogen\" (audio/voice), \"llmaster\" (LLMs), \"threedverse\" (3D).",
"type": "string"
},
"category": {
"description": "Filter providers by model category (e.g., \"stable_diffusion\", \"flux\", \"llm\", \"video\").",
"type": "string"
}
}
}🟢text-to-image(model_id, prompt, negative_prompt, width, height, ...)
Generate images from text prompts using AI models. Returns a request ID that can be used with fetch-image to retrieve results. Supports various AI image generation models.
输入模式
{
"type": "object",
"properties": {
"model_id": {
"description": "The model ID to use for image generation (e.g., \"flux-dev\", \"sdxl\").",
"type": "string"
},
"prompt": {
"description": "Text description of the image to generate.",
"type": "string"
},
"negative_prompt": {
"description": "Text describing what to avoid in the image.",
"type": "string"
},
"width": {
"description": "Image width in pixels (512-1024).",
"default": 1024,
"type": "integer"
},
"height": {
"description": "Image height in pixels (512-1024).",
"default": 1024,
"type": "integer"
},
"aspect_ratio": {
"description": "Aspect ratio for the image (e.g., \"1:1\", \"16:9\", \"9:16\").",
"type": "string"
},
"samples": {
"description": "Number of images to generate (1-4).",
"default": 1,
"type": "integer"
},
"webhook": {
"description": "URL to receive webhook notification when generation completes.",
"type": "string"
},
"track_id": {
"description": "Custom tracking ID for the request.",
"type": "string"
}
},
"required": [
"model_id",
"prompt"
]
}🟢image-to-image(model_id, prompt, init_image, negative_prompt, width, ...)
Transform existing images based on text prompts. Takes an input image and modifies it according to the provided prompt. Returns a request ID that can be used with fetch-image to retrieve results.
输入模式
{
"type": "object",
"properties": {
"model_id": {
"description": "The model ID to use for image transformation.",
"type": "string"
},
"prompt": {
"description": "Text description of how to transform the image.",
"type": "string"
},
"init_image": {
"description": "Input image URL or base64 string to transform.",
"type": "string"
},
"negative_prompt": {
"description": "Text describing what to avoid in the output.",
"type": "string"
},
"width": {
"description": "Output image width in pixels (512-1024).",
"type": "integer"
},
"height": {
"description": "Output image height in pixels (512-1024).",
"type": "integer"
},
"aspect_ratio": {
"description": "Aspect ratio for the output image.",
"type": "string"
},
"samples": {
"description": "Number of images to generate (1-4).",
"default": 1,
"type": "integer"
},
"strength": {
"description": "Transformation strength (0-1). Higher values mean more change from the original.",
"type": "number"
},
"webhook": {
"description": "URL to receive webhook notification when generation completes.",
"type": "string"
},
"track_id": {
"description": "Custom tracking ID for the request.",
"type": "string"
}
},
"required": [
"model_id",
"prompt",
"init_image"
]
}🟡inpaint-image(model_id, prompt, init_image, mask_image, negative_prompt, ...)
Edit specific areas of images using masks. Provide an image, a mask indicating the area to edit, and a prompt describing the desired changes. Returns a request ID that can be used with fetch-image to retrieve results.
输入模式
{
"type": "object",
"properties": {
"model_id": {
"description": "The model ID to use for inpainting.",
"type": "string"
},
"prompt": {
"description": "Text description of what to paint in the masked area.",
"type": "string"
},
"init_image": {
"description": "URL or base64 string of the input image to edit.",
"type": "string"
},
"mask_image": {
"description": "URL or base64 string of the mask image (white areas will be edited, black areas preserved).",
"type": "string"
},
"negative_prompt": {
"description": "Things to avoid in the generated content.",
"type": "string"
},
"strength": {
"description": "Strength of the transformation (0-1). Higher values mean more change.",
"type": "number"
},
"webhook": {
"description": "URL to receive webhook notification when generation completes.",
"type": "string"
},
"track_id": {
"description": "Custom tracking ID for the request.",
"type": "string"
}
},
"required": [
"model_id",
"prompt",
"init_image",
"mask_image"
]
}🟢fetch-image(id)
Retrieve the status and results of an image generation request. Use the request ID returned from text-to-image, image-to-image, or inpaint-image tools.
输入模式
{
"type": "object",
"properties": {
"id": {
"description": "The request ID returned from a previous image generation call.",
"type": "integer"
}
},
"required": [
"id"
]
}🟢text-to-video(model_id, prompt, negative_prompt, width, height, ...)
Generate videos from text descriptions. Creates AI-generated videos based on your text prompt. Returns a request ID that can be used with fetch-video to retrieve results.
输入模式
{
"type": "object",
"properties": {
"model_id": {
"description": "The model ID to use for video generation.",
"type": "string"
},
"prompt": {
"description": "Text description of the video to generate.",
"type": "string"
},
"negative_prompt": {
"description": "Things to avoid in the generated video.",
"type": "string"
},
"width": {
"description": "Video width in pixels (512-1024).",
"type": "integer"
},
"height": {
"description": "Video height in pixels (512-1024).",
"type": "integer"
},
"init_audio": {
"description": "URL of audio to sync with the video.",
"type": "string"
},
"duration": {
"description": "Video duration in seconds (minimum 4).",
"type": "integer"
},
"portrait": {
"description": "Generate in portrait orientation.",
"type": "boolean"
},
"aspect_ratio": {
"description": "Aspect ratio for the video (e.g., \"16:9\", \"9:16\").",
"type": "string"
},
"resolution": {
"description": "Output resolution preset.",
"type": "string"
},
"camera_fixed": {
"description": "Keep camera position fixed during generation.",
"type": "boolean"
},
"generate_audio": {
"description": "Generate audio for the video.",
"type": "boolean"
},
"enhance_prompt": {
"description": "Use AI to enhance the prompt.",
"type": "boolean"
},
"webhook": {
"description": "URL to receive webhook notification when generation completes.",
"type": "string"
},
"fps": {
"description": "Frames per second for the output video.",
"type": "integer"
},
"track_id": {
"description": "Custom tracking ID for the request.",
"type": "string"
}
},
"required": [
"model_id",
"prompt"
]
}🟢image-to-video(model_id, init_image, prompt, negative_prompt, resolution, ...)
Animate static images into videos. Takes input image(s) and creates a video based on the prompt. Returns a request ID that can be used with fetch-video to retrieve results.
输入模式
{
"type": "object",
"properties": {
"model_id": {
"description": "The model ID to use for video generation.",
"type": "string"
},
"init_image": {
"description": "Input image URL or base64 string to animate.",
"type": "string"
},
"prompt": {
"description": "Text description of the video motion/transformation.",
"type": "string"
},
"negative_prompt": {
"description": "Things to avoid in the generated video.",
"type": "string"
},
"resolution": {
"description": "Output resolution preset.",
"type": "string"
},
"portrait": {
"description": "Generate in portrait orientation.",
"type": "boolean"
},
"init_audio": {
"description": "URL of audio to sync with the video.",
"type": "string"
},
"aspect_ratio": {
"description": "Aspect ratio for the video.",
"type": "string"
},
"duration": {
"description": "Video duration in seconds (minimum 4).",
"type": "integer"
},
"webhook": {
"description": "URL to receive webhook notification when generation completes.",
"type": "string"
},
"track_id": {
"description": "Custom tracking ID for the request.",
"type": "string"
}
},
"required": [
"model_id",
"init_image"
]
}🟢video-to-video(model_id, prompt, init_video, init_image, image_timestamps, ...)
Transform existing videos with AI. Takes input video(s) and modifies them based on the prompt. Returns a request ID that can be used with fetch-video to retrieve results.
输入模式
{
"type": "object",
"properties": {
"model_id": {
"description": "The model ID to use for video transformation.",
"type": "string"
},
"prompt": {
"description": "Text description of how to transform the video.",
"type": "string"
},
"init_video": {
"description": "Input video URL to transform.",
"type": "string"
},
"init_image": {
"description": "Optional guidance image URLs applied in order across the input video.",
"type": "array"
},
"image_timestamps": {
"description": "Optional seconds into the video where each init_image applies, in the same order. Images without a timestamp are spread evenly across the clip.",
"type": "array"
},
"negative_prompt": {
"description": "Things to avoid in the generated video.",
"type": "string"
},
"seed": {
"description": "Random seed for reproducible results (0-4294967295).",
"type": "integer"
},
"aspect_ratio": {
"description": "Aspect ratio for the output video.",
"type": "string"
},
"public_figure_threshold": {
"description": "Threshold for public figure detection.",
"enum": [
"auto",
"low",
"medium",
"high"
],
"type": "string"
},
"duration": {
"description": "Video duration in seconds (minimum 4).",
"type": "integer"
},
"webhook": {
"description": "URL to receive webhook notification when generation completes.",
"type": "string"
},
"track_id": {
"description": "Custom tracking ID for the request.",
"type": "string"
}
},
"required": [
"model_id",
"prompt",
"init_video"
]
}🟢lip-sync(model_id, init_video, init_audio, webhook, track_id)
Sync video with audio for lip movements. Takes a video and audio file and syncs the lip movements to match the audio. Returns a request ID that can be used with fetch-video to retrieve results.
输入模式
{
"type": "object",
"properties": {
"model_id": {
"description": "The model ID to use for lip sync.",
"type": "string"
},
"init_video": {
"description": "URL or base64 string of the input video containing the face to sync.",
"type": "string"
},
"init_audio": {
"description": "URL or base64 string of the audio file to sync lips with.",
"type": "string"
},
"webhook": {
"description": "URL to receive webhook notification when processing completes.",
"type": "string"
},
"track_id": {
"description": "Custom tracking ID for the request.",
"type": "string"
}
},
"required": [
"model_id",
"init_video",
"init_audio"
]
}🟡motion-control(model_id, init_image, init_video, character_orientation, prompt, ...)
Control motion in video generation. Uses an image and video to create motion-controlled output. Returns a request ID that can be used with fetch-video to retrieve results.
输入模式
{
"type": "object",
"properties": {
"model_id": {
"description": "The model ID to use for motion control.",
"type": "string"
},
"init_image": {
"description": "URL or base64 string of the input image (character/subject).",
"type": "string"
},
"init_video": {
"description": "URL or base64 string of the video for motion reference.",
"type": "string"
},
"character_orientation": {
"description": "Use character orientation from image or video.",
"enum": [
"image",
"video"
],
"type": "string"
},
"prompt": {
"description": "Optional text prompt (max 2500 characters).",
"type": "string"
},
"keep_original_sound": {
"description": "Keep original sound from the video.",
"enum": [
"yes",
"no"
],
"type": "string"
},
"mode": {
"description": "Processing mode: std (standard) or pro (professional).",
"enum": [
"std",
"pro"
],
"type": "string"
},
"webhook": {
"description": "URL to receive webhook notification when processing completes.",
"type": "string"
},
"track_id": {
"description": "Custom tracking ID for the request.",
"type": "string"
}
},
"required": [
"model_id",
"init_image",
"init_video",
"character_orientation"
]
}🟢fetch-video(id)
Retrieve the status and results of a video generation request. Use the request ID returned from text-to-video, image-to-video, video-to-video, lip-sync, or motion-control tools.
输入模式
{
"type": "object",
"properties": {
"id": {
"description": "The request ID returned from a previous video generation call.",
"type": "string"
}
},
"required": [
"id"
]
}🟢text-to-speech(prompt, voice_id, model_id, temperature, webhook, ...)
Convert text to natural speech audio. Takes text and generates realistic speech using the specified voice. Returns a request ID that can be used with fetch-audio to retrieve results.
输入模式
{
"type": "object",
"properties": {
"prompt": {
"description": "The text to convert to speech.",
"type": "string"
},
"voice_id": {
"description": "The voice ID to use for speech generation.",
"type": "string"
},
"model_id": {
"description": "The model ID to use for text-to-speech.",
"type": "string"
},
"temperature": {
"description": "Temperature for voice variation (0-1).",
"type": "number"
},
"webhook": {
"description": "URL to receive webhook notification when generation completes.",
"type": "string"
},
"track_id": {
"description": "Custom tracking ID for the request.",
"type": "string"
}
},
"required": [
"prompt",
"voice_id",
"model_id"
]
}🟢speech-to-text(init_audio, model_id, webhook, track_id)
Transcribe audio to text. Takes an audio file and converts it to text transcription. Returns a request ID that can be used with fetch-audio to retrieve results.
输入模式
{
"type": "object",
"properties": {
"init_audio": {
"description": "URL or base64 string of the audio file to transcribe.",
"type": "string"
},
"model_id": {
"description": "The model ID to use for speech-to-text.",
"type": "string"
},
"webhook": {
"description": "URL to receive webhook notification when transcription completes.",
"type": "string"
},
"track_id": {
"description": "Custom tracking ID for the request.",
"type": "string"
}
},
"required": [
"init_audio",
"model_id"
]
}🟢speech-to-speech(init_audio, model_id, voice_id, webhook, track_id)
Voice conversion and transformation. Takes an audio file and converts it to a different voice. Returns a request ID that can be used with fetch-audio to retrieve results.
输入模式
{
"type": "object",
"properties": {
"init_audio": {
"description": "URL or base64 string of the audio file to transform.",
"type": "string"
},
"model_id": {
"description": "The model ID to use for voice conversion.",
"type": "string"
},
"voice_id": {
"description": "The target voice ID to convert to.",
"type": "string"
},
"webhook": {
"description": "URL to receive webhook notification when conversion completes.",
"type": "string"
},
"track_id": {
"description": "Custom tracking ID for the request.",
"type": "string"
}
},
"required": [
"init_audio",
"model_id",
"voice_id"
]
}🟢sound-generation(prompt, model_id, duration, webhook, track_id)
Generate sound effects from text descriptions. Creates audio sound effects based on your prompt. Returns a request ID that can be used with fetch-audio to retrieve results.
输入模式
{
"type": "object",
"properties": {
"prompt": {
"description": "Text description of the sound effect to generate.",
"type": "string"
},
"model_id": {
"description": "The model ID to use for sound generation.",
"type": "string"
},
"duration": {
"description": "Duration of the sound effect in seconds.",
"type": "integer"
},
"webhook": {
"description": "URL to receive webhook notification when generation completes.",
"type": "string"
},
"track_id": {
"description": "Custom tracking ID for the request.",
"type": "string"
}
},
"required": [
"prompt",
"model_id"
]
}🟡music-generation(prompt, model_id, tags, lyrics, music_length_ms, ...)
Create music from text prompts. Generates original music based on your description, optional tags, and lyrics. Returns a request ID that can be used with fetch-audio to retrieve results.
输入模式
{
"type": "object",
"properties": {
"prompt": {
"description": "Text description of the music to generate.",
"type": "string"
},
"model_id": {
"description": "The model ID to use for music generation.",
"type": "string"
},
"tags": {
"description": "Array of genre/style tags for the music.",
"type": "array"
},
"lyrics": {
"description": "Lyrics to include in the generated song.",
"type": "string"
},
"music_length_ms": {
"description": "Duration of the music in milliseconds.",
"type": "number"
},
"webhook": {
"description": "URL to receive webhook notification when generation completes.",
"type": "string"
},
"track_id": {
"description": "Custom tracking ID for the request.",
"type": "string"
}
},
"required": [
"prompt",
"model_id"
]
}🟢song-extender(model_id, init_audio, side, prompt, tags, ...)
Extend existing music tracks. Takes an existing audio file and extends it from either the beginning or end. Returns a request ID that can be used with fetch-audio to retrieve results.
输入模式
{
"type": "object",
"properties": {
"model_id": {
"description": "The model ID to use for song extension.",
"type": "string"
},
"init_audio": {
"description": "URL or base64 string of the audio file to extend.",
"type": "string"
},
"side": {
"description": "Which side to extend: left (beginning) or right (end).",
"enum": [
"left",
"right"
],
"type": "string"
},
"prompt": {
"description": "Optional text description for the extended portion.",
"type": "string"
},
"tags": {
"description": "Array of genre/style tags.",
"type": "array"
},
"lyrics": {
"description": "Lyrics for the extended portion.",
"type": "string"
},
"extend_duration": {
"description": "Duration to extend in seconds.",
"type": "number"
},
"crop_duration": {
"description": "Duration to crop from the original.",
"type": "number"
},
"webhook": {
"description": "URL to receive webhook notification when extension completes.",
"type": "string"
},
"track_id": {
"description": "Custom tracking ID for the request.",
"type": "string"
}
},
"required": [
"model_id",
"init_audio",
"side"
]
}🟡song-inpaint(model_id, init_audio, sections, prompt, tags, ...)
Edit specific sections of songs. Takes an audio file and regenerates a specific section defined by start and end times. Returns a request ID that can be used with fetch-audio to retrieve results.
输入模式
{
"type": "object",
"properties": {
"model_id": {
"description": "The model ID to use for song inpainting.",
"type": "string"
},
"init_audio": {
"description": "URL or base64 string of the audio file to edit.",
"type": "string"
},
"sections": {
"description": "Array of 2 numbers: [start_time, end_time] in seconds for the section to regenerate.",
"type": "array"
},
"prompt": {
"description": "Optional text description for the regenerated section.",
"type": "string"
},
"tags": {
"description": "Array of genre/style tags.",
"type": "array"
},
"lyrics": {
"description": "Lyrics for the regenerated section.",
"type": "string"
},
"instrumental": {
"description": "Generate instrumental only (no vocals).",
"type": "boolean"
},
"selection_crop": {
"description": "Return only the regenerated section.",
"type": "boolean"
},
"webhook": {
"description": "URL to receive webhook notification when inpainting completes.",
"type": "string"
},
"track_id": {
"description": "Custom tracking ID for the request.",
"type": "string"
}
},
"required": [
"model_id",
"init_audio",
"sections"
]
}🟡dubbing(model_id, init_video, source_lang, output_lang, webhook, ...)
Create dubbed audio content. Takes a video and translates/dubs the audio from one language to another. Returns a request ID that can be used with fetch-audio to retrieve results.
输入模式
{
"type": "object",
"properties": {
"model_id": {
"description": "The model ID to use for dubbing.",
"type": "string"
},
"init_video": {
"description": "URL or base64 string of the video to dub.",
"type": "string"
},
"source_lang": {
"description": "Source language code (e.g., \"en\", \"es\", \"fr\").",
"type": "string"
},
"output_lang": {
"description": "Target language code for the dubbed output.",
"type": "string"
},
"webhook": {
"description": "URL to receive webhook notification when dubbing completes.",
"type": "string"
},
"track_id": {
"description": "Custom tracking ID for the request.",
"type": "string"
}
},
"required": [
"model_id",
"init_video",
"source_lang",
"output_lang"
]
}🟢fetch-audio(id)
Retrieve the status and results of an audio generation request. Use the request ID returned from text-to-speech, speech-to-text, music-generation, and other audio tools.
输入模式
{
"type": "object",
"properties": {
"id": {
"description": "The request ID returned from a previous audio generation call.",
"type": "integer"
}
},
"required": [
"id"
]
}🟢fetch-generation(id, type)
Check the status of a queued or processing generation request on the ModelsLab V7 API. Use this tool when a generation tool returns a `status` of `"processing"`, and call it again while the status stays `"processing"`. Image jobs usually finish in seconds; video and music jobs can take several minutes, so tell the user the job is still running if it has not finished after a few polls. Pass the `id` from the original generation response and the `type` matching the category of the original request (e.g. "images" for text-to-image, image-to-image, or inpaint-image). The response will contain: - `status`: "success", "processing", or "error" - `output`: array of URLs when status is "success"
输入模式
{
"type": "object",
"properties": {
"id": {
"description": "The numeric id returned by a generation tool when status was \"processing\".",
"type": "integer"
},
"type": {
"description": "The generation category matching the original request: \"images\" for image tools, \"videos\" for video tools, \"audios\" for audio tools.",
"enum": [
"images",
"videos",
"audios"
],
"type": "string"
}
},
"required": [
"id",
"type"
]
}🟡chat-completion(model_id, messages, temperature, max_tokens, top_p, ...)
Chat with AI language models. Send messages to an LLM and receive AI-generated responses. Supports various models and configuration options. A message may carry a PDF as a {"type":"file","file":{"filename":...,"file_data":"data:application/pdf;base64,..."}} content part.
输入模式
{
"type": "object",
"properties": {
"model_id": {
"description": "The LLM model ID to use (e.g., \"gpt-4\", \"claude-3\").",
"type": "string"
},
"messages": {
"description": "Array of message objects with \"role\" (system/user/assistant) and \"content\" keys.",
"type": "array"
},
"temperature": {
"description": "Sampling temperature (0-2). Higher values make output more random.",
"default": 1,
"type": "number"
},
"max_tokens": {
"description": "Maximum number of tokens to generate.",
"type": "integer"
},
"top_p": {
"description": "Nucleus sampling parameter (0-1).",
"type": "number"
},
"top_k": {
"description": "Top-k sampling parameter.",
"type": "integer"
},
"frequency_penalty": {
"description": "Penalty for frequent tokens (-2 to 2).",
"type": "number"
},
"presence_penalty": {
"description": "Penalty for new topics (-2 to 2).",
"type": "number"
},
"n": {
"description": "Number of completions to generate (1-10).",
"default": 1,
"type": "integer"
},
"stop": {
"description": "Up to 4 sequences where the API will stop generating.",
"type": "array"
},
"seed": {
"description": "Random seed for reproducible results.",
"type": "integer"
},
"response_format": {
"description": "Response format configuration (e.g., {\"type\": \"json_object\"}).",
"type": "object"
},
"plugins": {
"description": "OpenRouter plugins. Send [{\"id\":\"file-parser\",\"pdf\":{\"engine\":\"native\"}}] alongside a {\"type\":\"file\"} content part to have a PDF attachment parsed.",
"type": "array"
}
},
"required": [
"model_id",
"messages"
]
}社区
证据