Ragionare con DeepSeek

Lavorare con DeepSeek in Python

James Chapman

AI Curriculum Lead, DataCamp

Icona chat

  • Prevede le parole successive
  • ✅ Ampia gamma di casi d'uso
  • ❌ Fatica con compiti multi-step complessi

Icona ragionamento

  • Scompone compiti complessi in sotto-compiti
  • ✅ Migliori prestazioni su compiti complessi
  • ❌ Più lento e costoso
Lavorare con DeepSeek in Python

Ragionamento e matematica

Un treno percorre 60 miles in 1.5 hours. Se mantiene la stessa velocità, quanta strada farà in 4 hours e a che ora arriverà se parte alle 2:15 PM?

Un treno che viaggia su un binario.

Lavorare con DeepSeek in Python

Ragionamento e matematica

Un treno percorre 60 miles in 1.5 hours. Se mantiene la stessa velocità, quanta strada farà in 4 hours e a che ora arriverà se parte alle 2:15 PM?

  1. Calcola la velocità (60 ÷ 1.5 = 40 mph)

  2. Moltiplica per 4 ore per trovare la distanza (40 × 4 = 160 miles)

  3. Aggiungi 4 ore all'ora di partenza (2:15 PM + 4 ore = 6:15 PM)

  4. Risultato: "160 miles, arrivo alle 6:15 PM"

Lavorare con DeepSeek in Python

Ragionare sul ragionamento

Flusso di lavoro di alto livello: pensare, fare, aggiornare la conoscenza.

Lavorare con DeepSeek in Python

Ragionamento attivo per impostazione predefinita

response = client.chat.completions.create(
    model="deepseek-ai/DeepSeek-V4.1-Flash",
    messages=[{"role": "user", "content": train_problem}]
)

print(response.choices[0].message.content)
  • V4-Pro ragiona di default → nessun parametro extra necessario
Lavorare con DeepSeek in Python
print(response.choices[0].message.content)
**Step 1 - Trova la velocità del treno**
Velocità = 60 / 1.5 = **40 mph**

**Step 2 - Distanza in 4 ore**
Distanza = 40 × 4 = **160 miles**

**Step 3 - Orario di arrivo**
2:15 PM + 4 ore = **6:15 PM**

**Risposta finale:** 160 miles, arrivo alle 6:15 PM
Lavorare con DeepSeek in Python

Disattivare il ragionamento

response = client.chat.completions.create(
    model="deepseek-ai/DeepSeek-V4.1-Flash",
    extra_body={"thinking": {"type": "disabled"}},
    messages=[{"role": "user", "content": prompt}]
)
  • Il thinking è "enabled" per default; passa "disabled" per disattivarlo
  • Senza ragionamento, il modello si comporta come un normale modello di chat
Lavorare con DeepSeek in Python

Aumentare lo sforzo

response = client.chat.completions.create(
    model="deepseek-ai/DeepSeek-V4.1-Flash",
    reasoning_effort="max",
    messages=[{"role": "user", "content": train_problem}]
)

print(response.choices[0].message.content)
  • Lo sforzo predefinito è "high" → imposta "max" per problemi più tosti
  • Aumentare lo sforzo di ragionamento aumenta i costi
  • Fai sempre test prima con valori di sforzo più bassi
Lavorare con DeepSeek in Python

Esercitiamoci!

Lavorare con DeepSeek in Python

Preparing Video For Download...