LLMxMapReduce after the Bing Search API
One setting to change.
LLMxMapReduce gathers sources for its surveys through LLM_search, whose Bing path calls the Bing Web Search API v7. Microsoft retired it on August 11, 2025 and decommissioned every instance and new sign-ups, so LLMxMapReduce's web search fails for anyone who sets it up today.
LLM_search reads its Bing address from BING_SEARCH_V7_ENDPOINT. Set it to https://api.specstream.ai/v7.0/search and put your SpecStream key in BING_SEARCH_V7_SUBSCRIPTION_KEY. The search class then sends its usual Bing call to SpecStream.
SpecStream answers Bing's v7 call in Bing's own JSON, scores 97.9 F-score on all 1,000 SimpleQA Verified questions and costs $5 per 1,000 searches, with no daily limit. A new account gets $10 of credit, no card.
New accounts get $10 of credit, no card. It covers 2,000 searches.
LLMxMapReduce web search and what replaces Bing, from each company's own pages on Nov 10, 2026
| SpecStream | Bing Web Search API | Grounding with Bing Search | Google Custom Search | Brave Search API | |
|---|---|---|---|---|---|
| Setting in LLMxMapReduce | BING_SEARCH_V7_ENDPOINT=https://api.specstream.ai/v7.0/search, with a SpecStream key in BING_SEARCH_V7_SUBSCRIPTION_KEY | BING_SEARCH_V7_ENDPOINT default: https://api.bing.microsoft.com/v7.0/search | Not a v7 address. Microsoft places it in Azure AI Agents | Reached only through SerpApi, with SERP_API_KEY | Not a search option in LLM_search |
| Open to a new account | Yes. Create a key and start with $10 of credit, no card | No. Retired on August 11, 2025, with every instance decommissioned and no new sign-up | Yes, with a Grounding with Bing Search resource in the Azure portal | No. Closed to new customers, and existing customers have until January 1, 2027 | Yes, with $5 in free credits every month |
| Price per 1,000 searches | $5, with up to 10 results a search | None. Microsoft decommissioned the product | $14 per 1,000 transactions | $5 per 1,000 queries after 100 free queries a day, for existing customers only | $5 per 1,000 requests |
| Limit | No limit per key and no daily limit. A busy call gets a 429 and is not charged | None. The API is retired | 150 transactions a second and 1 million a day | 10,000 queries a day | Up to 50 queries per second |
| What comes back | Bing's webPages.value[] with name, url, snippet and displayUrl, the fields LLM_search keeps | webPages.value[], with the name, URL and snippet of each page | No raw results: developers and end users get no access to the content returned | The URL, title and text snippets of each result, in Google's own format | Up to 20 results a request, in Brave's own format |
| What answers the search | The whole live web, read at the moment of the call. 97.9 F-score on all 1,000 SimpleQA Verified questions | Nothing since August 11, 2025 | An answer from the model. Not all models support it | The Programmable Search Engine you configured | Brave's index. Its own page reports 85.3% on FreshQA |
Why LLMxMapReduce developers point Bing search at SpecStream
Two environment variables
V2 and V3 both read BING_SEARCH_V7_ENDPOINT, with Bing's retired address as the default, and BING_SEARCH_V7_SUBSCRIPTION_KEY for the key. A SerpApi key wins over Bing when one is set, so unset it. Before and after:
export BING_SEARCH_V7_SUBSCRIPTION_KEY=<your Bing key>
# BING_SEARCH_V7_ENDPOINT unset: https://api.bing.microsoft.com/v7.0/searchexport BING_SEARCH_V7_ENDPOINT="https://api.specstream.ai/v7.0/search"
export BING_SEARCH_V7_SUBSCRIPTION_KEY="$SPECSTREAM_API_KEY"
unset SERP_API_KEY SERPAPI_KEYWith neither key set, LLM_search stops with "No valid search engine key provided". With the two variables above it takes the Bing path on every query.
The same request and the same JSON
_bing_web_search sends GET with q, mkt set to zh-CN and count, 10 by default, the key in Ocp-Apim-Subscription-Key. It keeps name, url, snippet and displayUrl from webPages.value. SpecStream answers in Bing's shape, 10 results a call at $0.005.
The same call from plain Python:
import os, requests
reply = requests.get(
"https://api.specstream.ai/v7.0/search",
headers={"Ocp-Apim-Subscription-Key": os.environ["SPECSTREAM_API_KEY"]},
params={"q": "large language model long context survey", "count": 10},
).json()
for page in reply["webPages"]["value"]:
print(page["name"], page["url"], page["snippet"])Every parameter and field of the route is in the Bing Web Search v7 guide, and what Microsoft ended, and when, is on the Bing Search API retirement page.
$5 per 1,000 searches, with no daily limit
A search of up to 10 results costs $0.005. There is no monthly plan and no daily limit. Credit you buy never expires, and a new account starts with $10 of credit, which covers 2,000 searches. A busy call gets a 429 with Retry-After and charges nothing.
The most accurate web search API, in about one second
On SimpleQA Verified the SpecStream Search API scores 97.9 F-score on all 1,000 official questions, 978 of them correct. On WideSearch it scores 64.0 item F1 and 43.4 row F1 on all 200 official tasks. The Extract API scores 0.908 F1 on WCXB. Every score and its method is on the benchmarks page.
Every Bing call runs the fast search. Measured on production on November 9, 2026, its median was 0.82 s at 1 search a second and 1.07 s at 20 a second, the 95th percentile stayed between 1.09 and 1.73 s, and it answered 718 of 720. There is no limit per key and no daily limit.
You decide what is kept, on each key
Create the key with zero_retention and a search made with it keeps no request text and no answer after the reply. spend_cap_cents is the most the key can spend, so a long LLMxMapReduce run stops at the cap you set.
curl -X POST https://api.specstream.ai/v1/account/keys \
-H "Authorization: Bearer $SPECSTREAM_API_KEY" -H "Content-Type: application/json" \
-d '{"name": "production", "scopes": ["account:read", "finds:spend"], "spend_cap_cents": 500000, "zero_retention": true}'Search, pages and rows on one key
The same key reads up to 20 pages or documents a call with the Extract API at $0.80 per 1,000 pages, and a page with no text is not charged. Deep Search returns every match for a request in plain words as structured rows, at 5¢, 15¢ or $1 a row, with a source URL on every value. The most a run can cost is approved before it starts.
Other web search options for LLMxMapReduce
SerpApi, LLMxMapReduce's other path
With SERP_API_KEY set, LLM_search calls https://serpapi.com/search.json for Google, Baidu or Bing results. SerpApi's Starter plan is $25 a month for 1,000 searches. SpecStream answers the Bing path at $5 per 1,000, with no monthly plan.
Grounding with Bing Search
Microsoft's named replacement for the Bing Search APIs, at $14 per 1,000 transactions, inside Azure AI Agents. It returns an answer with citations, and developers get no access to the raw results, so LLM_search has no webPages.value to read. SpecStream returns Bing's webPages.value[] at $5 per 1,000.
Google Custom Search JSON API
$5 per 1,000 queries after 100 free a day, up to 10,000 a day, for existing customers only: Google closed it to new customers and ends it on January 1, 2027. It answers a different request with a different reply. SpecStream keeps LLM_search's Bing call and costs the same $5 per 1,000, with no daily limit.
How SpecStream scores
The same numbers as the benchmarks page, from the official tasks and scorers.
How to move LLMxMapReduce web search to SpecStream
1. Create a key under Agents & API in the SpecStream workspace. A new account gets $10 of credit, no card, which covers 2,000 searches.
2. Check the key with the call Bing's v7 API takes. A 200 with webPages.value means the key works.
curl -H "Ocp-Apim-Subscription-Key: $SPECSTREAM_API_KEY" \
"https://api.specstream.ai/v7.0/search?q=test&count=3"3. Set the two Bing variables in the shell that starts the pipeline, and unset the SerpApi key:
export BING_SEARCH_V7_ENDPOINT="https://api.specstream.ai/v7.0/search"
export BING_SEARCH_V7_SUBSCRIPTION_KEY="$SPECSTREAM_API_KEY"
unset SERP_API_KEY SERPAPI_KEY4. Start the pipeline as before. Each search shows in your SpecStream request log with its price.
Frequently asked questions
Something we didn't answer? Talk to a human
Why is LLMxMapReduce web search not working?
LLM_search has nothing to call at its default address. Set BING_SEARCH_V7_ENDPOINT to https://api.specstream.ai/v7.0/search with a SpecStream key.Where do I get an LLMxMapReduce Bing API key now?
BING_SEARCH_V7_SUBSCRIPTION_KEY.Why does LLMxMapReduce still call SerpApi?
LLM_search uses SerpApi first whenever SERP_API_KEY is set. Unset it, and in V3 SERPAPI_KEY too, and the Bing path runs.What is the best LLMxMapReduce Bing alternative?
LLM_search already makes.Does the setting work in LLMxMapReduce V3?
LLM_search reads the same BING_SEARCH_V7_ENDPOINT and BING_SEARCH_V7_SUBSCRIPTION_KEY, and also takes the key from search_engines.bing_subscription_key in its config file.How much does a survey run cost with SpecStream search?
Sources
SpecStream wrote this page. LLMxMapReduce's settings come from its source on GitHub, and each provider's figure from that company's own page.
- LLMxMapReduce V2 LLM_search.pyraw.githubusercontent.com/thunlp/LLMxMapReduce/main/LLMxMapReduce_V2/src/LLM_search.py, read Nov 10, 2026
- LLMxMapReduce V3 LLM_search.pyraw.githubusercontent.com/thunlp/LLMxMapReduce/main/LLMxMapReduce_V3/src/mcp_server/search/LLM_search.py, read Nov 10, 2026
- LLMxMapReduce READMEraw.githubusercontent.com/thunlp/LLMxMapReduce/main/README.md, read Nov 10, 2026
- Bing Search API retirementlearn.microsoft.com/en-us/lifecycle/announcements/bing-search-api-retirement, read Nov 10, 2026
- Google Custom Search JSON API overviewdevelopers.google.com/custom-search/v1/overview, read Nov 10, 2026
- Grounding with Bing Search pricingmicrosoft.com/en-us/bing/apis/grounding-pricing, read Nov 10, 2026
- Bing APIsmicrosoft.com/en-us/bing/apis, read Nov 10, 2026
- Grounding with Bing Search toolslearn.microsoft.com/en-us/azure/foundry/agents/how-to/tools/bing-tools, read Nov 10, 2026
- Bing Web Search response objectslearn.microsoft.com/en-us/bing/search-apis/bing-web-search/reference/response-objects, read Nov 10, 2026
- Brave Search APIbrave.com/search/api/, read Nov 10, 2026
- Brave Search API documentationapi-dashboard.search.brave.com/app/documentation/web-search/get-started, read Nov 10, 2026
- SerpApi pricingserpapi.com/pricing, read Nov 10, 2026
- SpecStream benchmarksspecstream.ai/benchmarks, read Nov 10, 2026
- SpecStream pricingspecstream.ai/pricing, read Nov 10, 2026
- SpecStream for agentsspecstream.ai/agents.md, read Nov 10, 2026




