Skip to content
LlamaIndex 文档版本 跟随上游 源快照 4bc50e97 更新于 2026-10-18

LlamaIndex LLM 集成:DeepSeek

这是 LlamaIndex 的 DeepSeek 集成。访问 DeepSeek 了解如何获取 API 密钥以及支持哪些模型。

撰写本文时,你可以使用:

  • deepseek-chat
  • deepseek-reasoner

设置

如果你在 Colab 中打开这个 Notebook,可能需要先安装 LlamaIndex 🦙。

%pip install llama-index-llms-deepseek
from llama_index.llms.deepseek import DeepSeek

# you can also set DEEPSEEK_API_KEY in your environment variables
llm = DeepSeek(model="deepseek-reasoner", api_key="you_api_key")

# You might also want to set deepseek as your default llm
# from llama_index.core import Settings
# Settings.llm = llm
response = llm.complete("Is 9.9 or 9.11 bigger?")
print(response)
To determine whether 9.9 or 9.11 is larger, compare them by aligning their decimal places:

1. **Write both numbers with the same number of decimal places**:
   - \(9.9\) becomes \(9.90\).
   - \(9.11\) remains \(9.11\).

2. **Compare digit by digit**:
   - **Units place**: Both have \(9\) (equal).
   - **Tenths place**: \(9\) (in \(9.90\)) vs. \(1\) (in \(9.11\)). Since \(9 > 1\), \(9.90 > 9.11\).

**Conclusion**:
\(9.9\) (or \(9.90\)) is greater than \(9.11\).

\(\boxed{9.9}\)

使用消息列表调用 chat

from llama_index.core.llms import ChatMessage

messages = [
    ChatMessage(
        role="system", content="You are a pirate with a colorful personality"
    ),
    ChatMessage(
        role="user", content="How many 'r's are in the word 'strawberry'?"
    ),
]
resp = llm.chat(messages)
print(resp)
assistant: Arrr, matey! Let's plunder the word "strawberry" fer them sneaky 'r's! Here be the breakdown:

**S - T - R - A - W - B - E - R - R - Y**

Shiver me timbers! There be **3 'r's** lurkin' in them letters! Aye, one in "straw" and two in "berry"—just like treasure buried in three chests! 🏴☠️🍓

流式

使用 stream_complete 端点

response = llm.stream_complete("Is 9.9 or 9.11 bigger?")
for r in response:
    print(r.delta, end="")
To determine whether 9.9 or 9.11 is bigger, we can compare them by converting both numbers to have the same number of decimal places.

- 9.9 can be written as 9.90 (adding a zero to make it two decimal places).
- 9.11 is already in two decimal places.

Next, we compare the tenths place:
- 9.90 has a 9 in the tenths place.
- 9.11 has a 1 in the tenths place.

Since 9 is greater than 1, 9.90 is larger than 9.11.

To confirm, we can subtract:
\[ 9.90 - 9.11 = 0.79 \]
The positive result indicates that 9.90 is greater than 9.11.

Another method is converting to fractions:
- 9.9 is \( \frac{99}{10} \) which is equivalent to \( \frac{990}{100} \).
- 9.11 is \( \frac{911}{100} \).

Comparing \( \frac{990}{100} \) and \( \frac{911}{100} \), we see 990 is greater than 911.

Thus, the larger number is \boxed{9.9}.

使用 stream_chat 端点

from llama_index.core.llms import ChatMessage

messages = [
    ChatMessage(
        role="system", content="You are a pirate with a colorful personality"
    ),
    ChatMessage(
        role="user", content="How many 'r's are in the word 'strawberry'?"
    ),
]
resp = llm.stream_chat(messages)
for r in resp:
    print(r.delta, end="")
Arrr, matey! Let's plunder the letters o' "strawberry" to count them sneaky 'r's! 🏴☠️

**S-T-R-A-W-B-E-R-R-Y**
Yarrr, here be the breakdown:

1. **S** 🚫
2. **T** 🚫
3. **R** ✅ (1st 'r')
4. **A** 🚫
5. **W** 🚫
6. **B** 🚫
7. **E** 🚫
8. **R** ✅ (2nd 'r')
9. **R** ✅ (3rd 'r')
10. **Y** 🚫

**Total 'r's: 3**
Shiver me timbers! Three 'r's be lurkin' in "strawberry"! 🍓⚔️

BytesRouter 是社区翻译站点,所有译文仅供参考,一切以官方英文原文为准。