DeepSeek: DeepSeek V3.2
DeepSeek V3.2 combina razonamiento de texto con uso de herramientas y análisis de contexto largo. Su arquitectura de atención dispersa y su formato de conversación actualizado admiten tareas de programación, búsqueda y agentes de varios pasos, con un contexto de 128K y flujos de trabajo separados de razonamiento y respuesta directa.
Sobre el modelo
Esta descripción cubre las capacidades del modelo. Las entradas, salidas y opciones disponibles en Ailoot se indican a continuación para el método seleccionado.
DeepSeek V3.2 es el modelo de texto de DeepSeek para razonamiento y trabajo de agentes, con énfasis en el procesamiento eficiente de contexto largo. El productor organiza sus cambios principales en torno a DeepSeek Sparse Attention, un marco de aprendizaje por refuerzo ampliado y un proceso de entrenamiento de tareas de agentes. Acepta preguntas escritas y contexto y produce texto, incluida una respuesta, código o contenido de llamadas a herramientas. Es distinto de la versión anterior V3.2 Exp y de la variante independiente de razonamiento Speciale.
DeepSeek Sparse Attention añade un indexador y selección detallada de tokens a la arquitectura de atención latente. Para una secuencia larga, el indexador selecciona la información de tokens anteriores que utiliza el cálculo principal de atención. El informe indica que este es el cambio arquitectónico respecto de V3.1 Terminus y que utiliza la misma arquitectura que V3.2 Exp. Su contexto publicado es de 128K tokens, que permite material de origen considerable y una tarea continua, mientras que el razonamiento generado y el historial de herramientas también consumen el contexto disponible.
El entrenamiento posterior abarca respuestas con y sin razonamiento en matemáticas, programación, razonamiento lógico, tareas generales de agentes, programación mediante agentes y búsqueda. Los especialistas por ámbito aportan datos que se consolidan en el modelo final, seguidos de aprendizaje por refuerzo mixto. Para una pregunta ordinaria, puede ser adecuada una respuesta directa; para un problema difícil, el flujo de trabajo de razonamiento puede desarrollar una solución antes de presentar el resultado final. Especifica la respuesta o el entregable requerido de forma independiente del razonamiento intermedio.
Un cambio importante de la edición es el razonamiento con herramientas. El formato de chat actualizado permite que el razonamiento continúe durante una tarea de llamadas a herramientas, en lugar de tratar el análisis y la acción como etapas sin relación. La aplicación ejecuta una operación seleccionada por el modelo y devuelve su resultado para el siguiente paso. La regla de contexto de herramientas del productor conserva el razonamiento histórico mientras solo se añaden mensajes relacionados con herramientas; cuando llega un nuevo mensaje de usuario, descarta ese razonamiento y conserva las llamadas a herramientas y sus resultados. Distinguir correctamente los roles de conversación importa para ese comportamiento.
Para programación, proporciona el fragmento de origen o los archivos pertinentes, el problema observado, el resultado esperado y las condiciones que debe conservar el cambio. Un ejemplo de brief es: “Utiliza el código y los resultados de herramientas proporcionados para localizar la causa, propón la corrección más pequeña y devuelve el parche final con su resultado de validación de respaldo”. Para una tarea de búsqueda, describe la pregunta, la evidencia requerida y lo que cuenta como respuesta completada. Las herramientas de búsqueda y ejecución las proporciona la aplicación que lo integra, no el texto por sí solo.
El productor recomienda una temperatura de 1.0 y top-p de 0.95 para uso local. V3.2 introduce una representación revisada de llamadas a herramientas y un codificador dedicado de mensajes. Su rol developer está reservado para la plantilla de agente de búsqueda del productor, y la API oficial no acepta ese rol. El analizador de referencia espera una salida bien formada y no repara resultados malformados; cuando una aplicación utiliza campos generados o argumentos de herramientas, debe verificar su estructura antes de actuar sobre ellos.
El informe técnico identifica las trayectorias largas de razonamiento y la autoverificación redundante como limitaciones prácticas. Una tarea de agente puede alcanzar el límite de 128K aunque el material de origen original quepa, porque se acumulan las salidas de herramientas y el razonamiento repetido. Mantén un registro conciso de las observaciones pertinentes y haz explícito el entregable final. Para trabajo sensible al conocimiento, adjunta material de fuentes autorizadas en el tema o proporciona una herramienta de búsqueda adecuada, en lugar de esperar que el conocimiento de entrenamiento defina todos los hechos.
DeepSeek V3.2 Speciale es una variante independiente de razonamiento profundo con alto cómputo y no admite llamadas a herramientas según la ficha del modelo. Sus funciones no deben utilizarse como el perfil estándar de herramientas de V3.2. Del mismo modo, la generación posterior V4 y el predecesor experimental tienen identidades y opciones de configuración separadas. Conserva la edición V3.2 identificada por nombre al comparar tareas en las que importen el modelo y el formato de prompts.
Para un análisis práctico basado en fuentes, etiqueta los materiales y solicita una conclusión respaldada por los pasajes pertinentes, manteniendo diferenciadas las suposiciones y la información faltante. Para un agente, indica las funciones permitidas, el resultado final esperado y el criterio de finalización. Esto prepara el flujo de trabajo de razonamiento y herramientas del modelo en torno a un entregable de texto, código o análisis que pueda revisarse y esté vinculado con la evidencia proporcionada.
Ailoot Ultra · OpenAI Chat POST /v1/chat/completions deepseek-v3.2-thinking
deepseek-v3.2-thinkingInicio
DeepSeek V3.2 combina razonamiento de texto con uso de herramientas y análisis de contexto largo. Su arquitectura de atención dispersa y su formato de conversación actualizado admiten tareas de programación, búsqueda y agentes de varios pasos, con un contexto de 128K y flujos de trabajo separados de razonamiento y respuesta directa.
- Entradas aceptadas
- Texto
- Resultados
- Texto
Disponible en Ailoot · entradas y métodos
Ailoot Ultra · OpenAI Chat POST /v1/chat/completions
- Entrada
text- Salida
text- Formato de salida
- json o SSE
| Campo | Tipo | Requisito | Valores y límites | Predeterminado |
|---|---|---|---|---|
Campomodel | Tipostring | RequisitoObligatorio | Valores y límites deepseek-v3.2-thinking | Predeterminado— |
Campomessages | Tipomessage[] | RequisitoObligatorio | Valores y límites Número mínimo de elementos: 1 | Predeterminado— |
Campomessages[].role | Tipostring | RequisitoObligatorio | Valores y límites Depende del modelo | Predeterminado— |
Campomessages[].content | Tipostring | RequisitoOpcional | Valores y límites Se aplica cuando: Conversación textual | Predeterminado— |
Campostream | Tipoboolean | RequisitoOpcional | Valores y límites | Predeterminadofalse |
Combinaciones de materiales de entrada
Texto · Texto UTF8
messages[].content
Parámetros del método y ciclo de vida
| Parámetro | Contrato |
|---|---|
Parámetrocontent_type | Contratoapplication/json |
Parámetrorequired | Contratomodel, messages |
Parámetromaterial_types | Contratotext |
Parámetromessages | Contratomatriz de mensajes con estructura role/content |
Parámetrofile_material | Contratodocumento real en UTF-8 insertado como texto literal; no se deduce ningún ID de archivo |
Parámetrooptional_controls | Contratostream |
Parámetrocontrol_scope | ContratoConversación textual; stream es un booleano y su valor predeterminado es false. |
Parámetrooutput_modalities | Contratotext |
Parámetrohosted_operations | Contratofalse |
Parámetromultimodal_input_binding | Contratonull |
Alias de método: /chat/completions
Ciclo de vida: synchronous_or_streamed
Envía el ID exacto del modelo junto con messages.
La longitud del contexto no es un límite máximo de salida.
Un archivo de texto puede aportar texto literal; las entradas de imagen, audio u objetos de archivo requieren una vinculación exacta.
Tarifas
Las referencias tarifarias no añaden opciones a la solicitud. Los parámetros admitidos se indican en el método seleccionado.
- Modo fast
- Sin especificar Cuando se selecciona el modo fast
- Modo flex
- Sin especificar Cuando se selecciona el modo flex
- Esfuerzo máximo de razonamiento
- Sin especificar Cuando el esfuerzo máximo de razonamiento usa el ajuste default
Tarifas de Ailoot
Precios por configuración
| Configuración | Tabla de tarifas | Cargo |
|---|---|---|
| ConfiguraciónTarifas base por token | Tabla de tarifasTarifa base | Cargo Entrada · Tokens de entrada $0.00058 / 1K tokens Salida · Tokens de salida $0.00086 / 1K tokens Entrada · Lectura de caché $0 / 1K tokens Entrada · Escritura en caché $0 / 1K tokens Entrada · Escritura en caché, 1 hora — / 1K tokens |
Ailoot reserva un monto estimado antes de la solicitud. Tras obtener el resultado, liquida el cargo definitivo según el uso medido. En las respuestas en flujo, la liquidación usa el registro de uso final. Cómo funcionan la reserva y la liquidación →
Solicitudes de ejemplo
Ailoot Ultra · OpenAI Chat
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
python3 - <<'PY_REQUEST'
import json,os
from pathlib import Path
p=json.loads('{"model":"deepseek-v3.2-thinking","messages":[{"role":"user","content":"hello"}],"stream":false}')
Path("request.json").write_text(json.dumps(p,ensure_ascii=False))
PY_REQUEST
curl --fail-with-body --silent --show-error https://api.ailoot.ai/v1/chat/completions \
-H "Authorization: Bearer $AILOOT_API_KEY" -H 'Content-Type: application/json' \
--data-binary @request.json -D response-headers.txt -o result.json
python3 - <<'PY_RESULT'
import json
from pathlib import Path
r=json.loads(Path("result.json").read_text())
for x in r.get("choices",[]):
if x.get("message",{}).get("content"): print(x["message"]["content"])
PY_RESULT
from openai import OpenAI
import os
if not os.environ.get("AILOOT_API_KEY", "").strip(): raise SystemExit("Set AILOOT_API_KEY before making a request")
client=OpenAI(base_url="https://api.ailoot.ai/v1",api_key=os.environ["AILOOT_API_KEY"],max_retries=0)
result=client.chat.completions.create(model="deepseek-v3.2-thinking", messages=[{"role":"user","content":"hello"}], stream=False)
import base64, json
from pathlib import Path
def save_result(data, stem="result"):
# Keep every field, including usage, IDs, reasoning and tool requests.
Path(stem + ".json").write_text(json.dumps(data, ensure_ascii=False, indent=2), encoding="utf-8")
print(json.dumps(data, ensure_ascii=False, indent=2))
def save_blob(encoded, suffix, label):
raw = base64.b64decode(encoded, altchars=b"-_", validate=True)
ext = "png" if raw.startswith(b"\x89PNG\r\n\x1a\n") else "jpg" if raw.startswith(b"\xff\xd8") else "webp" if raw[:4] == b"RIFF" and raw[8:12] == b"WEBP" else suffix
file = Path(stem + "-" + label + "." + ext)
file.write_bytes(raw)
print("Saved", file)
for index, block in enumerate(data.get("content") or []):
print("Content", index, json.dumps(block, ensure_ascii=False))
for choice in data.get("choices") or []:
print("Choice", choice.get("index"), json.dumps(choice.get("message", choice.get("delta", {})), ensure_ascii=False))
for index, item in enumerate(data.get("output") or []):
print("Output", index, json.dumps(item, ensure_ascii=False))
if item.get("type") == "image_generation_call" and item.get("result"):
save_blob(item["result"], item.get("output_format") or "bin", "output-" + str(index))
for ci, candidate in enumerate(data.get("candidates") or []):
for pi, part in enumerate((candidate.get("content") or {}).get("parts") or []):
print("Candidate/part", ci, pi, json.dumps(part, ensure_ascii=False))
blob = part.get("inlineData") or part.get("inline_data")
if blob and blob.get("data"):
mime = blob.get("mimeType") or blob.get("mime_type")
suffix = {"image/png":"png", "image/jpeg":"jpg", "image/webp":"webp", "audio/wav":"wav", "audio/mpeg":"mp3", "video/mp4":"mp4"}.get(mime, "bin")
save_blob(blob["data"], suffix, "candidate-" + str(ci) + "-part-" + str(pi))
save_result(result.to_dict(mode="json"))
Recibir y guardar resultados
Ailoot Ultra · OpenAI Chat
json o SSE
Conserva todos los resultados completados
Conserva todas las respuestas, archivos y partes de contenido completos recibidos.
Conserva cada alternativa y su contenido, llamadas de herramientas y razonamiento. En SSE, ensambla los fragmentos incrementales por índice de alternativa/herramienta y conserva el motivo final de terminación y el uso.
Si es necesario revisar la respuesta original
Conserva los ID de solicitud y respuesta y los encabezados. No se proporciona una URL genérica para recuperar tareas de texto.
Campos de respuesta
| Campo | Tipo |
|---|---|
Campochoices[].index | Tipointeger |
Campochoices[].message.content | Tipostring|null |
Campochoices[].message.tool_calls | Tipotool_call[] |
Campochoices[].message.reasoning_content | Tipostring |
Campochoices[].message.reasoning_details | Tipoobject|array |
Campochoices[].finish_reason | Tipostring|null |
Campousage | Tipoobject |
Errores y siguientes pasos
| Respuesta | Condición | Siguiente paso |
|---|---|---|
Respuesta400 · invalid_request_error | CondiciónCampos obligatorios, representación del material o valor del parámetro no válidos | Siguiente pasoCorrige los campos indicados antes de una nueva solicitud de creación. |
Alias
Alias del modelo
Ailoot Ultra deepseek-v3.2-thinking
Alias de rutas de métodos
/chat/completions
ID de modelo relacionados
FAQ · DeepSeek: DeepSeek V3.2
- ¿Qué entradas y resultados están disponibles?
POST /v1/chat/completions·deepseek-v3.2-thinking:text→text- ¿Qué campos utiliza la solicitud?
POST /v1/chat/completions·deepseek-v3.2-thinking:model,messages,stream- ¿Qué límites se aplican?
POST /v1/chat/completions·deepseek-v3.2-thinking:messages.min_items:1