Utafutaji wa wavuti
Weka web_search: true na model inaweka jibu lake kwenye matokeo ya moja kwa moja.
POST https://api.shannon-ai.com/v1/chat/completions
from openai import OpenAI
client = OpenAI(api_key="YOUR_API_KEY", base_url="https://api.shannon-ai.com/v1")
response = client.chat.completions.create(
model="shannon-3",
messages=[{"role": "user", "content": "What is the weather forecast for Lisbon this weekend?"}],
extra_body={"web_search": True}, # a Shannon field, so it goes in extra_body
)
print(response.choices[0].message.content) import OpenAI from "openai";
const client = new OpenAI({ apiKey: "YOUR_API_KEY", baseURL: "https://api.shannon-ai.com/v1" });
const response = await client.chat.completions.create({
model: "shannon-3",
messages: [{ role: "user", content: "What is the weather forecast for Lisbon this weekend?" }],
web_search: true,
});
console.log(response.choices[0].message.content); curl https://api.shannon-ai.com/v1/chat/completions \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "shannon-3",
"messages": [
{"role": "user", "content": "What is the weather forecast for Lisbon this weekend?"}
],
"web_search": true
}' Jibu ni chat completion ya kawaida yenye nyongeza mbili. Jibu linaelekeza kwenye matokeo ya utafutaji kwa namba zilizo kwenye mabano mraba, sources inasema kila namba inawakilisha nini, na annotations inaonyesha mahali kila moja inapotajwa:
{
"id": "chatcmpl-3e5a7c9b1d2f4a6c8e0b2d4f6a8c1e3b",
"object": "chat.completion",
"created": 1791590400,
"model": "shannon-3",
"choices": [
{
"index": 0,
"message": {
"role": "assistant",
"content": "Saturday in Lisbon is forecast to be sunny with a high near 24 °C [1]. Sunday turns cloudy, with a chance of light rain in the afternoon [2].",
"reasoning_content": null,
"annotations": [
{
"type": "url_citation",
"url_citation": {
"start_index": 66,
"end_index": 69,
"url": "https://weather.example/lisbon/weekend",
"title": "Lisbon weather: weekend outlook"
}
},
{
"type": "url_citation",
"url_citation": {
"start_index": 137,
"end_index": 140,
"url": "https://forecast.example/pt/lisbon/sunday",
"title": "Sunday forecast for Lisbon"
}
}
]
},
"finish_reason": "stop"
}
],
"usage": {
"prompt_tokens": 2874,
"completion_tokens": 41,
"total_tokens": 2915
},
"sources": [
{
"index": 1,
"title": "Lisbon weather: weekend outlook",
"url": "https://weather.example/lisbon/weekend"
},
{
"index": 2,
"title": "Sunday forecast for Lisbon",
"url": "https://forecast.example/pt/lisbon/sunday"
},
{
"index": 3,
"title": "Portugal: the week ahead",
"url": "https://news.example/portugal/weather-week"
}
]
} Kuwasha utafutaji
Utafutaji ni field ya ombi, imezimwa kwa chaguo-msingi. Hakuna kinachotafutwa isipokuwa ombi liitume.
| Field | Aina | Chaguo-msingi | Maelezo | Inatumiwa na |
|---|---|---|---|---|
web_search | boolean | false | true hufanya utafutaji wa wavuti kwa ombi hili na kuipa model matokeo kabla ya kujibu. | Kila model ya Shannon isipokuwa shannon-coder-1 |
| Endpoint | Web search | Jinsi |
|---|---|---|
/v1/chat/completions | Ndiyo | "web_search": true kwenye mwili wa ombi. |
/v1/messages | Ndiyo | "web_search": true kwenye mwili wa ombi. |
/v1/responses | — | Endpoint hii hujibu kutoka kwa model pekee. Tumia mojawapo ya hizo mbili za juu kwa jibu lenye utafutaji. |
Kwenye /v1/messages field iko ngazi ya juu ya mwili, kando ya model na messages:
{
"model": "shannon-3",
"web_search": true,
"messages": [
{
"role": "user",
"content": "What is the weather forecast for Lisbon this weekend?"
}
]
} Ombi lenye utafutaji hufanya nini
- API hutafuta kwenye wavuti kwa ujumbe wa mwisho wa user. Zamu za awali za mazungumzo huipa utafutaji muktadha wake.
- Utafutaji hufanyika kwenye kila ombi linalotuma
web_search: true. Model haichagui kama itafute. - Matokeo huwekwa mbele ya model kama vyanzo vilivyohesabiwa, na model huandika jibu lake kutoka kwayo.
- Jibu huanza utafutaji ukikamilika. Ombi la stream halitumi chochote, si headers wala matukio, hadi wakati huo, kwa hiyo tarajia kusubiri zaidi kabla ya chunk ya kwanza.
Jibu lina nini
- Jibu lina umbo la kawaida la endpoint yake. Jibu liko kwenye
choices[0].message.content(block yatextkwenye/v1/messages). - Maandishi yanaweza kubeba alama kama
[1]na[2]baada ya kauli zinazoziunga mkono. Kila namba inawakilisha mojawapo ya matokeo ambayo model ilisoma. sourcesinataja matokeo hayo: kipengee kimoja kwa kila matokeo ambayo model ilipewa, chenyeindex,titlenaurl. Alama[1]ni kipengee chenyeindex1. Matokeo ambayo jibu halitaji pia yameorodheshwa.- Kwenye
/v1/chat/completionsujumbe pia unaannotations, kwa umbo la OpenAI:url_citationmoja kwa kila chanzo ambacho alama inakitaja, yenyeurl,title, nastart_indexnaend_index, nafasi ya alama kwenyecontentiliyohesabiwa kwa herufi (mwisho haujumuishwi). - Kwenye stream
sourceshuja na chunk ya mwisho, na kwenye/v1/messagesna tukio lamessage_delta. Annotations huja kwenye chunk moja kabla ya ya mwisho, kamadelta.annotations. sourcesipo tu ikiwa utafutaji wa ombi hili ulipata kitu. Jibu lisilo nayo liliandikwa bila matokeo ya utafutaji.
Jinsi utafutaji unavyohesabiwa
Kila mpango unajumuisha idadi ya utafutaji kwa siku:
| Mpango | Utafutaji kwa siku |
|---|---|
| Bure | 3 |
| Jumlisha | 30 |
| Standard | 50 |
| Mtaalamu | 60 |
- Ombi ambalo utafutaji wake ulipata kitu hutumia utafutaji mmoja wa kiasi cha siku. Utafutaji usiopata kitu hautumii wowote.
- Chat na API hutumia kiasi cha akaunti inayomiliki key.
- Hesabu huanza upya kila siku saa 00:00 UTC.
- Matokeo ya utafutaji ni tokens za input za ombi na hutozwa pamoja na prompt iliyobaki.
Utafutaji wa siku unapoisha
Ombi linalotuma web_search: true baada ya utafutaji wa mwisho wa siku halikataliwi. Hujibiwa bila utafutaji: hali ni 200 na jibu halina sources.
Utafutaji kama tool yako mwenyewe
web_search: true ndiyo swichi pekee ya utafutaji unaoelezwa hapa. Function unayofafanua kwenye tools na kuipa jina web_search ni mojawapo ya tools zako mwenyewe: model hurudisha wito, na code yako hufanya utafutaji na kutuma matokeo nyuma.
Aina za search tool za majukwaa mengine, kama web_search_20250305 kwenye /v1/messages au {"type": "web_search"} kwenye /v1/responses, hazianzishi utafutaji hapa.
Makosa
Web search haiongezi status code wala aina ya kosa. Utafutaji usiopata kitu, au siku isiyo na utafutaji uliobaki, hutoa jibu la kawaida bila matokeo ya utafutaji. Kila kosa lingine ni lile lile kama kwa ombi bila utafutaji. Ushughulikiaji wa Makosa