Ricerca profonda
API di ricerca profonda
api.openai.com con deepsearch.jina.ai per iniziare.reasoning_effort.reasoning_effort.{
"role": "user",
"content": "hi"
}
curl https://deepsearch.jina.ai/v1/chat/completions \
-H "Content-Type: application/json"\
-H "Authorization: Bearer " \
-d @- <<EOFEOF
{
"model": "jina-deepsearch-v1",
"messages": [
{
"role": "user",
"content": "Hi!"
},
{
"role": "assistant",
"content": "Hi, how can I help you?"
},
{
"role": "user",
"content": "what's the latest blog post from jina ai?"
}
],
"stream": true,
"reasoning_effort": "medium"
}
EOFEOF
{
"id": "1742181758589",
"object": "chat.completion.chunk",
"created": 1742181758,
"model": "jina-deepsearch-v1",
"system_fingerprint": "fp_1742181758589",
"choices": [
{
"index": 0,
"delta": {
"content": "The latest blog post from Jina AI is titled \"Snippet Selection and URL Ranking in DeepSearch/DeepResearch,\" published on March 12, 2025 [^1]. This post discusses how to improve the quality of DeepSearch by using late-chunking embeddings for snippet selection and rerankers to prioritize URLs before crawling. You can read the full post here: https://jina.ai/news/snippet-selection-and-url-ranking-in-deepsearch-deepresearch\n\n[^1]: Since our DeepSearch release on February 2nd 2025 we ve discovered two implementation details that greatly improved quality In both cases multilingual embeddings and rerankers are used in an in context manner operating at a much smaller scale than the traditional pre computed indices these models typically require [jina.ai](https://jina.ai/news/snippet-selection-and-url-ranking-in-deepsearch-deepresearch)",
"type": "text",
"annotations": [
{
"type": "url_citation",
"url_citation": {
"title": "Snippet Selection and URL Ranking in DeepSearch/DeepResearch",
"exactQuote": "Since our DeepSearch release on February 2nd 2025, we've discovered two implementation details that greatly improved quality. In both cases, multilingual embeddings and rerankers are used in an _\"in-context\"_ manner - operating at a much smaller scale than the traditional pre-computed indices these models typically require.",
"url": "https://jina.ai/news/snippet-selection-and-url-ranking-in-deepsearch-deepresearch",
"dateTime": "2025-03-13 06:48:01"
}
}
]
},
"logprobs": null,
"finish_reason": "stop"
}
],
"usage": {
"prompt_tokens": 169670,
"completion_tokens": 27285,
"total_tokens": 196526
},
"visitedURLs": [
"https://github.com/jina-ai/node-DeepResearch/blob/main/src/utils/url-tools.ts",
"https://huggingface.co/jinaai/jina-embeddings-v3",
"https://github.com/jina-ai/reader",
"https://zilliz.com/blog/training-text-embeddings-with-jina-ai",
"https://threads.net/@unwind_ai/post/DGmhWCVswbe/media",
"https://twitter.com/JinaAI_/status/1899840196507820173",
"https://jina.ai/news?tag=tech-blog",
"https://docs.llamaindex.ai/en/stable/examples/embeddings/jinaai_embeddings",
"https://x.com/jinaai_",
"https://x.com/JinaAI_/status/1899840202358784170",
"https://tracxn.com/d/companies/jina-ai/__IQ81fOnU0FsDpagFjG-LrG0DMWHELqI6znTumZBQF-A/funding-and-investors",
"https://jina.ai/models",
"https://linkedin.com/posts/imohitmayank_jinaai-has-unveiled-the-ultimate-developer-activity-7300401711242711040-VD64",
"https://medium.com/@tossy21/trying-out-jina-ais-node-deepresearch-c5b55d630ea6",
"https://huggingface.co/jinaai/jina-clip-v2",
"https://arxiv.org/abs/2409.10173",
"https://milvus.io/docs/embed-with-jina.md",
"https://seedtable.com/best-startups-in-china",
"https://threads.net/@sung.kim.mw/post/DGhG-J_vREu/jina-ais-a-practical-guide-to-implementing-deepsearchdeepresearchthey-cover-desi",
"https://elastic.co/search-labs/blog/jina-ai-embeddings-rerank-model-open-inference-api",
"http://status.jina.ai/",
"https://apidog.com/blog/recreate-openai-deep-research",
"https://youtube.com/watch?v=QxHE4af5BQE",
"https://sdxcentral.com/articles/news/cisco-engages-businesses-on-ai-strategies-at-greater-bay-area-2025/2025/02",
"https://aws.amazon.com/blogs/machine-learning/build-rag-applications-using-jina-embeddings-v2-on-amazon-sagemaker-jumpstart",
"https://reddit.com/r/perplexity_ai/comments/1ejbdqa/fastest_open_source_ai_search_engine",
"https://search.jina.ai/",
"https://sebastian-petrus.medium.com/build-openais-deep-research-open-source-alternative-4f21aed6d9f0",
"https://medium.com/@elmo92/jina-reader-transforming-web-content-to-feed-llms-d238e827cc27",
"https://openai.com/index/introducing-deep-research",
"https://python.langchain.com/docs/integrations/tools/jina_search",
"https://varindia.com/news/meta-is-in-talks-for-usd200-billion-ai-data-center-project",
"https://varindia.com/news/Mira-Murati%E2%80%99s-new-AI-venture-eyes-$9-billion-valuation",
"https://53ai.com/news/RAG/2025031401342.html",
"https://arxiv.org/abs/2409.04701",
"https://bigdatawire.com/this-just-in/together-ai-raises-305m-series-b-to-power-ai-model-training-and-inference",
"https://github.blog/",
"https://cdn-uploads.huggingface.co/production/uploads/660c3c5c8eec126bfc7aa326/MvwT9enRT7gOESHA_tpRj.jpeg",
"https://cdn-uploads.huggingface.co/production/uploads/660c3c5c8eec126bfc7aa326/JNs_DrpFbr6ok_pSRUK4j.jpeg",
"https://app.dealroom.co/lists/33530",
"https://api-docs.deepseek.com/news/news250120",
"https://sdxcentral.com/articles/news/ninjaone-raises-500-million-valued-at-5-billion/2025/02",
"https://linkedin.com/sharing/share-offsite?url=https%3A%2F%2Fjina.ai%2Fnews%2Fa-practical-guide-to-implementing-deepsearch-deepresearch%2F",
"https://twitter.com/intent/tweet?url=https%3A%2F%2Fjina.ai%2Fnews%2Fa-practical-guide-to-implementing-deepsearch-deepresearch%2F",
"https://platform.openai.com/docs/api-reference/chat/create",
"https://mp.weixin.qq.com/s/-pPhHDi2nz8hp5R3Lm_mww",
"https://huggingface.us17.list-manage.com/subscribe?id=9ed45a3ef6&u=7f57e683fa28b51bfc493d048",
"https://automatio.ai/",
"https://sdk.vercel.ai/docs/introduction",
"https://app.eu.vanta.com/jinaai/trust/vz7f4mohp0847aho84lmva",
"https://apply.workable.com/huggingface/j/AF1D4E3FEB",
"https://facebook.com/sharer/sharer.php?u=https%3A%2F%2Fjina.ai%2Fnews%2Fa-practical-guide-to-implementing-deepsearch-deepresearch%2F",
"https://facebook.com/sharer/sharer.php?u=http%3A%2F%2F127.0.0.1%3A3000%2Fen-US%2Fnews%2Fsnippet-selection-and-url-ranking-in-deepsearch-deepresearch%2F",
"https://reddit.com/submit?url=https%3A%2F%2Fjina.ai%2Fnews%2Fa-practical-guide-to-implementing-deepsearch-deepresearch%2F",
"https://apply.workable.com/huggingface",
"https://news.ycombinator.com/submitlink?u=https%3A%2F%2Fjina.ai%2Fnews%2Fa-practical-guide-to-implementing-deepsearch-deepresearch%2F",
"https://news.ycombinator.com/submitlink?u=http%3A%2F%2F127.0.0.1%3A3000%2Fen-US%2Fnews%2Fsnippet-selection-and-url-ranking-in-deepsearch-deepresearch%2F",
"https://docs.github.com/site-policy/privacy-policies/github-privacy-statement",
"https://discord.jina.ai/",
"https://docs.github.com/site-policy/github-terms/github-terms-of-service",
"https://bigdatawire.com/this-just-in/qumulo-announces-30-million-funding",
"https://x.ai/blog/grok-3",
"https://m-ric-open-deep-research.hf.space/",
"https://youtu.be/sal78ACtGTc?feature=shared&t=52",
"https://mp.weixin.qq.com/s/apnorBj4TZs3-Mo23xUReQ",
"https://perplexity.ai/hub/blog/introducing-perplexity-deep-research",
"https://githubstatus.com/",
"https://github.blog/changelog/2021-09-30-footnotes-now-supported-in-markdown-fields",
"https://openai.com/index/introducing-operator",
"mailto:[email protected]",
"https://resources.github.com/learn/pathways",
"https://status.jina.ai/",
"https://reuters.com/technology/artificial-intelligence/tencents-messaging-app-weixin-launches-beta-testing-with-deepseek-2025-02-16",
"https://scmp.com/tech/big-tech/article/3298981/baidu-adopts-deepseek-ai-models-chasing-tencent-race-embrace-hot-start",
"https://microsoft.com/en-us/research/articles/magentic-one-a-generalist-multi-agent-system-for-solving-complex-tasks",
"javascript:UC_UI.showSecondLayer();",
"https://resources.github.com/",
"https://storm-project.stanford.edu/research/storm",
"https://blog.google/products/gemini/google-gemini-deep-research",
"https://youtu.be/vrpraFiPUyA",
"https://chat.baidu.com/search?extParamsJson=%7B%22enter_type%22%3A%22ai_explore_home%22%7D&isShowHello=1&pd=csaitab&setype=csaitab&usedModel=%7B%22modelName%22%3A%22DeepSeek-R1%22%7D",
"https://app.dover.com/jobs/jinaai",
"http://localhost:3000/",
"https://docs.cherry-ai.com/",
"https://en.wikipedia.org/wiki/Delayed_gratification",
"https://support.github.com/?tags=dotcom-footer",
"https://docs.jina.ai/",
"https://skills.github.com/",
"https://partner.github.com/",
"https://help.x.com/resources/accessibility",
"https://business.twitter.com/en/help/troubleshooting/how-twitter-ads-work.html",
"https://business.x.com/en/help/troubleshooting/how-twitter-ads-work.html",
"https://support.twitter.com/articles/20170514",
"https://support.x.com/articles/20170514",
"https://t.co/jnxcxPzndy",
"https://t.co/6EtEMa9P05",
"https://help.x.com/using-x/x-supported-browsers",
"https://legal.twitter.com/imprint.html"
],
"readURLs": [
"https://jina.ai/news/a-practical-guide-to-implementing-deepsearch-deepresearch",
"https://github.com/jina-ai/node-DeepResearch",
"https://huggingface.co/blog/open-deep-research",
"https://jina.ai/news/snippet-selection-and-url-ranking-in-deepsearch-deepresearch",
"https://x.com/jinaai_?lang=en",
"https://jina.ai/news",
"https://x.com/joedevon/status/1896984525210837081",
"https://github.com/jina-ai/node-DeepResearch/blob/main/src/tools/jina-latechunk.ts"
],
"numURLs": 98
}
Guida ai parametri di DeepSearch
Controllo Qualità
In DeepSearch, c’è generalmente un compromesso: più passaggi esegue il sistema, maggiore sarà la qualità dei risultati ottenuti, ma si consumeranno anche più token. Questa qualità migliorata deriva da ricerche più ampie ed esaustive e da una riflessione più approfondita. Quattro parametri principali controllano la qualità di DeepSearch: budget_tokens, max_attempts, team_size e reasoning_effort. Il parametro reasoning_effort è essenzialmente una combinazione preimpostata di budget_tokens e max_attempts che è stata accuratamente ottimizzata. Per la maggior parte degli utenti, regolare reasoning_effort è l’approccio più semplice.
Token di Budget
budget_tokens imposta il numero massimo di token consentiti per l’intero processo di DeepSearch. Questo include tutte le operazioni, incluse ricerche web, lettura di pagine web, riflessione, riepilogo e codifica. Budget più elevati portano naturalmente a una migliore qualità delle risposte. Il processo di DeepSearch si interromperà quando il budget sarà esaurito o quando verrà trovata una risposta soddisfacente, a seconda di quale evento si verifichi per primo. Se il budget si esaurisce prima, si otterrà comunque una risposta, ma potrebbe non essere quella definitiva e completamente perfezionata, poiché non ha superato tutti i controlli di qualità definiti da max_attempts.
Tentativi massimi
max_attempts determina il numero di tentativi che il sistema effettuerà per risolvere un problema durante il processo di DeepSearch. Ogni volta che DeepSearch produce una risposta, deve superare determinati test di qualità definiti da un valutatore interno. Se la risposta non supera questi test, il valutatore fornisce un feedback e il sistema utilizza questo feedback per continuare la ricerca e perfezionare la risposta. Impostando max_attempts troppo basso si otterranno risultati rapidi, ma la qualità potrebbe risentirne, poiché la risposta potrebbe non superare tutti i controlli di qualità. Impostando un valore troppo alto, il processo potrebbe bloccarsi in un ciclo infinito di tentativi, in cui continua a fallire.
Il sistema restituisce una risposta finale quando viene superato il limite di budget_tokens o max_attempts (a seconda di quale evento si verifica per primo), oppure quando la risposta supera tutti i test pur avendo ancora a disposizione budget e tentativi rimanenti.
Dimensione del team
team_size influisce sulla qualità in modo fondamentalmente diverso rispetto a max_attempts e budget_tokens. Quando team_size è impostato su più di uno, il sistema scompone il problema originale in sottoproblemi e li analizza in modo indipendente. Si può pensare a questo come a un modello di riduzione a mappa, in cui un lavoro di grandi dimensioni viene suddiviso in attività più piccole che vengono eseguite in parallelo. La risposta finale è quindi una sintesi dei risultati di ciascun lavoratore. Lo chiamiamo “team_size” perché simula un team di ricerca in cui più agenti indagano diversi aspetti dello stesso problema e collaborano a un report finale.
Tenete presente che il consumo di token di tutti gli agenti contribuisce al totale dei budget_tokens, ma ogni agente ha un valore max_attempts indipendente. Ciò significa che con un valore di team_size più elevato ma con lo stesso valore di budget_tokens, gli agenti potrebbero restituire risposte prima del previsto a causa di vincoli di budget. Consigliamo di aumentare sia team_size che budget_tokens contemporaneamente per fornire a ciascun agente risorse sufficienti per svolgere un lavoro approfondito.
Infine, team_size può essere considerato come il parametro che controlla l’ampiezza della ricerca: determina quanti aspetti diversi verranno analizzati. Allo stesso tempo, budget_tokens e max_attempts controllano la profondità della ricerca, ovvero quanto approfonditamente verrà esplorato ogni aspetto.
Controllo della fonte
DeepSearch si basa fortemente sul grounding, ovvero sulle fonti che utilizza per le informazioni. La qualità non riguarda solo la profondità e l’ampiezza degli algoritmi; la fonte da cui DeepSearch ottiene le sue informazioni è altrettanto importante e spesso il fattore decisivo. Esploriamo i parametri chiave che controllano questo aspetto.
Nessuna risposta diretta
no_direct_answer è un semplice interruttore che impedisce al sistema di restituire una risposta al passaggio 1. Quando abilitato, disabilita la capacità del sistema di utilizzare le informazioni interne e lo obbliga a cercare sempre prima sul web. Attivandolo, il sistema “ripensa” anche a domande semplici come “che giorno è oggi”, “come stai” o a conoscenze di base che sono sicuramente presenti nei dati di addestramento del modello, come “chi è stato il 40° presidente degli Stati Uniti?”.
Controlli dei nomi host
Tre parametri, boost_hostnames, bad_hostnames e only_hostnames, indicano a DeepSearch quali pagine web dare priorità, evitare o utilizzare esclusivamente. Per capire come funzionano, considerate il processo di ricerca e lettura in DeepSearch:
- Fase di ricerca: il sistema effettua una ricerca sul web e recupera un elenco di URL di siti web con i relativi snippet
- Fase di selezione: il sistema decide quali URL visitare effettivamente (non li visita tutti per motivi di tempo e costi)
boost_hostnames: i domini elencati qui hanno una priorità più alta e hanno maggiori probabilità di essere visitatibad_hostnames: questi domini non verranno mai visitationly_hostnames: quando definiti, verranno visitati solo gli URL che corrispondono a questi nomi host
Ecco alcune note importanti sui parametri dei nomi host. In primo luogo, il sistema utilizza sempre gli snippet restituiti dai motori di ricerca come indizi iniziali per la costruzione di catene di ragionamento. Questi parametri relativi ai nomi host influenzano solo le pagine web visitate dal sistema, non il modo in cui formula le query di ricerca.
In secondo luogo, se gli URL raccolti non contengono domini specificati in only_hostnames, il sistema potrebbe interrompere completamente la lettura delle pagine web. Consigliamo di utilizzare questi parametri solo se si ha familiarità con la propria domanda di ricerca e si sa dove è probabile trovare potenziali risposte (o dove sicuramente non dovrebbero essere trovate).
Caso speciale: Ricerca accademica
Per la ricerca accademica, si potrebbe voler limitare le ricerche e le letture ad arxiv.org. In questo caso, è sufficiente impostare "search_provider": "arxiv" e tutto si baserà su arxiv come unica fonte. Tuttavia, domande generiche o banali potrebbero non ottenere risposte efficienti con questa restrizione, quindi utilizzare "search_provider": "arxiv" solo per la ricerca accademica seria.
Codice lingua di ricerca
search_language_code è un altro parametro che influenza le fonti web forzando il sistema a generare query in una lingua specifica, indipendentemente dall’input originale o dai passaggi di ragionamento intermedi. Generalmente, il sistema decide automaticamente la lingua di query per ottenere la migliore copertura di ricerca, ma a volte il controllo manuale è utile.
Casi d’uso per il controllo della lingua
Ricerca di mercato internazionale: quando si studia l’impatto di un marchio o di un’azienda locale sui mercati internazionali, è possibile forzare le query a utilizzare sempre l’inglese con "search_language_code": "en" per una copertura globale, oppure utilizzare la lingua locale per informazioni regionali più personalizzate.
Ricerca globale con prompt in altre lingue: se l’input è sempre in cinese o giapponese (perché i tuoi utenti finali parlano principalmente queste lingue), ma l’ambito di ricerca è globale anziché limitato ai siti web locali cinesi o giapponesi, il sistema potrebbe automaticamente orientarsi verso la lingua del prompt. Utilizza questo parametro per forzare le query in inglese per una copertura internazionale più ampia.
Chatta con DeepSearch
Che cos'è DeepSearch?
LLM standard
RAG e LLM con messa a terra
Ricerca profonda
Prezzi dell'API
| Prodotto | Punto finale API | Descrizionearrow_upward | senza chiave APIkey_off | con chiave API gratuitakey | con chiave API a pagamentokey | con chiave API Premiumkey | Latenza media | Conteggio dell'utilizzo del token | Richiesta consentita | |
|---|---|---|---|---|---|---|---|---|---|---|
| API del lettore | https://r.jina.ai | Convertire l'URL in testo compatibile con LLM | 20 RPM | 500 RPM | 500 RPM | trending_up5000 RPM | 7.9s | Contare il numero di token nella risposta di output. | GET/POST | |
| API del lettore | https://s.jina.ai | Cerca sul web e converti i risultati in testo compatibile con LLM | block | 100 RPM | 100 RPM | trending_up1000 RPM | 2.5s | Ogni richiesta costa un numero fisso di token, a partire da 10000 token | GET/POST | |
| API di riclassificazione | https://api.jina.ai/v1/rerank | Classifica i documenti per query | block | 100 RPM & 100,000 TPM | 500 RPM & 2,000,000 TPM | trending_up5,000 RPM & 50,000,000 TPM | ssid_chart dipende dalla dimensione dell'input help | Conta il numero di token nella richiesta di input. | POST | |
| Incorporamento dell'API | https://api.jina.ai/v1/embeddings | Convertire testo/immagini in vettori di lunghezza fissa | block | 100 RPM & 100,000 TPM | 500 RPM & 2,000,000 TPM | trending_up5,000 RPM & 50,000,000 TPM | ssid_chart dipende dalla dimensione dell'input help | Conta il numero di token nella richiesta di input. | POST | |
| API del classificatore | https://api.jina.ai/v1/train | Addestrare un classificatore utilizzando esempi etichettati | block | 25 RPM & 25,000 TPM | 125 RPM & 500,000 TPM | 1,250 RPM & 12,000,000 TPM | ssid_chart dipende dalla dimensione dell'input | I token vengono conteggiati come: input_tokens × num_iters | POST | |
| API del classificatore (Colpo zero) | https://api.jina.ai/v1/classify | Classificare gli input utilizzando la classificazione zero-shot | block | 25 RPM & 25,000 TPM | 125 RPM & 500,000 TPM | 1,250 RPM & 12,000,000 TPM | ssid_chart dipende dalla dimensione dell'input | I token vengono conteggiati come: input_tokens + label_tokens | POST | |
| API del classificatore (Pochi colpi) | https://api.jina.ai/v1/classify | Classificare gli input utilizzando un classificatore addestrato a pochi scatti | block | 25 RPM & 25,000 TPM | 125 RPM & 500,000 TPM | 1,250 RPM & 12,000,000 TPM | ssid_chart dipende dalla dimensione dell'input | I token sono conteggiati come: input_tokens | POST | |
| API del segmentatore | https://api.jina.ai/v1/segment | Tokenizzare e segmentare il testo lungo | 20 RPM | 200 RPM | 200 RPM | 1,000 RPM | 0.3s | Il token non viene conteggiato come utilizzo. | GET/POST | |
| Ricerca profonda | https://deepsearch.jina.ai/v1/chat/completions | Ragiona, cerca e ripeti per trovare la risposta migliore | block | 50 RPM | 50 RPM | 500 RPM | 56.7s | Contare il numero totale di token nell'intero processo. | POST |






