> ## Documentation Index
> Fetch the complete documentation index at: https://docs.heihuzi.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# DeepSeek Responses

> 普通响应、无状态多轮上下文和 SSE 完成处理。

调用 `POST https://code.heihuzi.ai/v1/responses`。实测日期：**2026-09-19**。OpenAI SDK 的 Base URL 为 `https://code.heihuzi.ai/v1`。

## 请求参数

<ParamField body="model" type="string" required>
  填写 `deepseek-flash`。本页所有公开请求组合均使用此模型。
</ParamField>

<ParamField body="input" type="string | object[]" required>
  单轮可传字符串，多轮传完整消息及输出条目。工具回传使用 `function_call_output`，图片使用 `input_image`。
</ParamField>

<ParamField body="max_output_tokens" type="integer">
  成功示例使用 `1024`。Flash 另以 `32` 验证长输出截断，状态为 `incomplete`、原因为 `max_output_tokens`，输出 token 为 32。
</ParamField>

<ParamField body="stream" type="boolean">
  开启后读取 SSE，必须看到 `response.completed`；`response.incomplete` 和 `response.failed` 应按未完成处理。
</ParamField>

## 普通调用与多轮上下文

下面完整脚本已重新通过真实调用，两次请求依次返回 `READY` 和 `MAPLE-731`。第二轮显式回传第一轮输出；末尾的可选字段读取也已随完整脚本执行通过。

<RequestExample>
  ```python theme={null}
  import os
  from openai import OpenAI
  client = OpenAI(api_key=os.environ['HEIHUZI_API_KEY'], base_url='https://code.heihuzi.ai/v1', timeout=120.0, max_retries=0)
  history = [{'role': 'user', 'content': 'Remember the code MAPLE-731. Reply READY.'}]
  first = client.responses.create(model='deepseek-flash', input=history, max_output_tokens=1024)
  assert first.status == 'completed' and first.output_text.strip() == 'READY'
  history.extend((item.model_dump(exclude_none=True) for item in first.output))
  history.append({'role': 'user', 'content': 'What code did I give you? Reply with the code only.'})
  second = client.responses.create(model='deepseek-flash', input=history, max_output_tokens=1024)
  assert second.status == 'completed' and second.output_text.strip() == 'MAPLE-731'
  print(first.output_text, second.output_text)
  print('store', getattr(second, 'store', None))
  ```
</RequestExample>

多轮使用完整历史回传；下面仅描述这个通过实测的方式。[官方 Responses 格式参考](https://api-docs.deepseek.com/zh-cn/guides/responses_api/)

## 流式输出

本次收到 `response.output_text.delta` 和 `response.completed`，最终答案为 `42`；没有 `data: [DONE]`。思考摘要使用 `response.reasoning_summary_text.delta` / `.done`，与官方示例列出的事件名称有差异。

```python theme={null}
import os
from openai import OpenAI
client = OpenAI(api_key=os.environ['HEIHUZI_API_KEY'], base_url='https://code.heihuzi.ai/v1', timeout=120.0, max_retries=0)
events = client.responses.create(model='deepseek-flash', input='What is 19 + 23? Reply with the number only.', max_output_tokens=1024, stream=True)
(answer, completed) = ('', False)
for event in events:
    if event.type == 'response.output_text.delta':
        answer += event.delta
    elif event.type == 'response.completed':
        assert event.response.status == 'completed'
        completed = True
        print('usage', event.response.usage)
    elif event.type in ('response.failed', 'response.incomplete', 'error'):
        raise RuntimeError(event.model_dump_json())
print(answer)
assert completed and answer.strip() == '42'
```

## 返回字段

本次原始非流式响应包含 `id`、`model`、`object`、`output`、`status`、`usage`。SDK 的 `output_text` 是提取正文的便捷属性。`store`、`reasoning`、`input_tokens_details`、`output_tokens_details` 等可选字段可能缺失；不要不加判断地访问嵌套属性。

[工具调用](/cn/api-reference/deepseek/tools)和[图片理解](/cn/api-reference/deepseek/vision)各有完整实测示例。本页只列出上述已通过的组合。
