spring-projects / spring-projects/spring-ai

Add support for ByteDance's LLM doubao-seed-1-6-thinking

Open
#4,296 2 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

status: waiting-for-triage
Dominant language
Java
Stars
9.5k
Forks
2.9k
Avg merge
1d 7h
Merged PRs (30d)
6

Description

Expected Behavior

Can use Spring AI to integrate with ByteDance's LLM doubao-seed-1-6-thinking-250715

or which starter should I choose?

Current Behavior

I tried using spring-ai-starter-model-openai, but the request parameters do not support the thinking field, and the response data also doesn’t include reasoning_content.

I hope Spring AI can support integration with more LLMs.

Request Example:

{
    "model": "doubao-seed-1-6-thinking-250715",
    "messages": [
      {
        "role": "user",
        "content": "Hello"
      },
      {
        "role": "system",
        "content": "You're an intelligent assistant."
      }
    ],
    "stream": true,
    "thinking": {
      "type": "enabled"
    },
    "stream_options": {
      "include_usage": true
    }
  }

Response Example:

...
{"choices":[{"delta":{"content":"","reasoning_content":" need","role":"assistant"},"index":0}],"created":1756883562,"id":"021756883562269078532ccda42bfe607645d235a4671675eb216","model":"doubao-seed-1-6-thinking-250715","service_tier":"default","object":"chat.completion.chunk","usage":null}

{"choices":[{"delta":{"content":"","reasoning_content":".","role":"assistant"},"index":0}],"created":1756883562,"id":"021756883562269078532ccda42bfe607645d235a4671675eb216","model":"doubao-seed-1-6-thinking-250715","service_tier":"default","object":"chat.completion.chunk","usage":null}

{"choices":[{"delta":{"content":"Hello","role":"assistant"},"index":0}],"created":1756883562,"id":"021756883562269078532ccda42bfe607645d235a4671675eb216","model":"doubao-seed-1-6-thinking-250715","service_tier":"default","object":"chat.completion.chunk","usage":null}

{"choices":[{"delta":{"content":"!","role":"assistant"},"index":0}],"created":1756883562,"id":"021756883562269078532ccda42bfe607645d235a4671675eb216","model":"doubao-seed-1-6-thinking-250715","service_tier":"default","object":"chat.completion.chunk","usage":null}

{"choices":[{"delta":{"content":" How","role":"assistant"},"index":0}],"created":1756883562,"id":"021756883562269078532ccda42bfe607645d235a4671675eb216","model":"doubao-seed-1-6-thinking-250715","service_tier":"default","object":"chat.completion.chunk","usage":null}

...

{"choices":[],"created":1756883562,"id":"021756883562269078532ccda42bfe607645d235a4671675eb216","model":"doubao-seed-1-6-thinking-250715","object":"chat.completion.chunk","usage":{"completion_tokens":72,"prompt_tokens":20,"total_tokens":92,"prompt_tokens_details":{"cached_tokens":0},"completion_tokens_details":{"reasoning_tokens":63}}}

[DONE]

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start with the spring-ai-starter-model-openai integration path, focusing on request parameters and streaming response handling. Compare the provided doubao-seed-1-6-thinking-250715 request and response examples with the current behavior; done means the thinking field can be sent and reasoning_content is exposed in responses.

Written by the indexing model from the issue text.

Assessment

Tech stack
java, spring
Domain
ai, backend-api-design
Issue type
Feature
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
38/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.