web_search 实现联网查询生成响应的功能,以下是联网响应的请求示例:
curl --location --request POST 'https://geekai.co/api/v1/responses' \
--header 'Authorization: Bearer {YOUR_GEEKAI_API_KEY}' \
--header 'Content-Type: application/json' \
--data-raw '{
"model": "gpt-5-mini",
"input": "2025年票房最高的电影?",
"tools": [
{
"type": "web_search",
"search_context_size": "low"
}
]
}'
# 先安装 OpenAI SDK: `pip3 install openai`
from openai import OpenAI
client = OpenAI(api_key="$GEEKAI_API_KEY", base_url="https://geekai.co/api/v1")
response = client.responses.create(
model="gpt-5-mini",
input="2025年票房最高的电影?",
tools=[
{
"type": "web_search",
"search_context_size": "low"
}
]
)
print(response)
// 先安装 OpenAI SDK: `npm install openai`
import OpenAI from "openai";
const openai = new OpenAI({
baseURL: 'https://geekai.co/api/v1',
apiKey: '$GEEKAI_API_KEY'
});
async function main() {
const response = await openai.responses.create({
model: "gpt-5-mini",
input: "2025年票房最高的电影?",
tools: [
{
type: "web_search",
search_context_size: "low"
}
]
});
console.log(response);
}
main();
package main
import (
"bytes"
"encoding/json"
"fmt"
"io"
"net/http"
)
func main() {
requestBody := map[string]any{
"model": "gpt-5-mini",
"input": "2025年票房最高的电影?",
"tools": []any{
map[string]any{
"type": "web_search",
"search_context_size": "low",
},
},
}
jsonData, err := json.Marshal(requestBody)
if err != nil {
panic(err)
}
client := &http.Client{}
req, err := http.NewRequest("POST", "https://geekai.co/api/v1/responses", bytes.NewBuffer(jsonData))
if err != nil {
panic(err)
}
req.Header.Set("Authorization", "Bearer $GEEKAI_API_KEY")
req.Header.Set("Content-Type", "application/json")
resp, err := client.Do(req)
if err != nil {
panic(err)
}
defer resp.Body.Close()
body, err := io.ReadAll(resp.Body)
if err != nil {
panic(err)
}
fmt.Println(string(body))
}
search_context_size 参数可以设置为 low, medium, high 来控制搜索上下文的大小,不同搜索上下文参数对应的搜索收费倍率不一样。
联网搜索工具支持以下模型:
gpt-5(推理级别为minimal时不支持联网搜索)gpt-5-minigpt-4.1gpt-4.1-minigpt-4ogpt-4o-minio3o4-minio3-proo3-deep-researcho4-mini-deep-research
