AI Web Research Assistant with Citations avatar

AI Web Research Assistant with Citations

Pricing

$50.00 / 1,000 research brief completeds

Go to Apify Store
AI Web Research Assistant with Citations

AI Web Research Assistant with Citations

Ask any research question and get a concise answer synthesised from web sources you supply or it finds, with inline citations and the source records to check them.

Pricing

$50.00 / 1,000 research brief completeds

Rating

0.0

(0)

Developer

jay casey

jay casey

Maintained by Community

Actor stats

0

Bookmarked

1

Total users

1

Monthly active users

4 days ago

Last modified

Categories

Share

Ask any research question and get a concise answer synthesised from web sources you supply or it finds, with inline citations and the source records to check them.

Best for: research brief, cited research, web research.
Input and output: Drop in a research question and get an inspectable cited answer in one run.

What can Research Brief do?

Ask a focused question and add any sources you want to prioritize. The Actor can search for more public pages, fetches the selected sources, and saves a cited brief with a row for each source.

What you getFeatures
📄 A cited Markdown brief🌐 Supplied URL fetching and optional web search
🔗 Source rows with fetch status and excerpts📏 Quick, standard, and deep source limits

Who this is for

  • Prepare a short evidence brief
  • Compare claims across a set of links
  • Collect source records for later analysis

What you get back

FieldTypeWhat you getExample
idstringStable source identifier used in the dataset.S1
titlestringTitle reported for the source item.Hallucination (artificial intelligence) - Wikipedia
urlstringLink to the source page used in the brief.https://en.wikipedia.org/wiki/Hallucination_(artificial_intelligence)
statusstringWhether this item completed its requested analysis.fetched
publishednullPublication date when the page provides one.null
excerptstringShort text excerpt collected from the source.Hallucination (artificial intelligence) 39 languages Afrikaans العربية Asturianu Azərbaycanca Български বাংলা Bosanski Català Čeština Dansk Deutsch Esperanto...
errornullProblem details when this item does not complete.null

The run also links to its dataset and any files named in the Actor output.

What you need to provide

FieldTypeRequiredWhat it doesExample
questionstringYesThe specific question the brief should answer.What are the main approaches to reducing hallucination in LLM-based agents?
contextstringNoOptional background, constraints, audience, or decision this research should support.``
depthstringNoQuick uses up to 3 sources, standard up to 6, and deep up to 10.quick
sourceUrlsarrayNoOptional URLs to prioritize. The Actor can also discover web sources. The prefilled examples are stable public pages so a first run succeeds even if web search is unavailable.["https://en.wikipedia.org/wiki/Hallucination_(artificial_intelligence)","https://en.wi...
searchbooleanNoDiscover additional public web sources with DuckDuckGo.true
llmobjectNoOptional OpenAI-compatible endpoint override: baseUrl, model, apiKey. Leave blank to use the Actor's own default model (no key needed). Without an apiKey, baseUrl/model are ignored.``

Quick start

  1. Open the Actor in Apify Console.
  2. Click Try for free or Create a task.
  3. Replace the sample values with your own input.
  4. Click Start.
  5. Open the dataset and the named output files when the run ends.

Pricing

  • brief-completed: $0.05 per research brief completed.
  • Example: any brief (quick 3, standard 6, or deep 10 sources) costs $0.05; an evidence-only brief (synthesis failed) is not charged.
  • You pay only for successful results. Failed or skipped items are not charged.
  • Normal Apify compute and proxy costs may also apply.

Limits and honest notes

  • Quick uses up to 3 sources, standard up to 6, and deep up to 10.
  • Pages that block access return an error source row.
  • If synthesis fails, the Actor saves an evidence only brief and labels the failure.

Code and API

The examples below use the same values as the Apify Console sample.

Input JSON

{
"question": "What are the main approaches to reducing hallucination in LLM-based agents?",
"depth": "quick",
"sourceUrls": [
"https://en.wikipedia.org/wiki/Hallucination_(artificial_intelligence)",
"https://en.wikipedia.org/wiki/Retrieval-augmented_generation"
],
"search": true
}

Real output sample

This excerpt comes from the real run named in the current marketplace release report.

{
"title": "Hallucination (artificial intelligence) - Wikipedia",
"url": "https://en.wikipedia.org/wiki/Hallucination_(artificial_intelligence)",
"published": null,
"excerpt": "Hallucination (artificial intelligence) 39 languages Afrikaans العربية Asturianu Azərbaycanca Български বাংলা Bosansk...",
"status": "fetched",
"error": null,
"id": "S1"
}

curl

curl -X POST "https://api.apify.com/v2/acts/physealabs~research-brief/runs?token=$APIFY_TOKEN" \
-H "Content-Type: application/json" \
-d @input.json

Python

from apify_client import ApifyClient
client = ApifyClient("YOUR_APIFY_TOKEN")
run = client.actor("physealabs/research-brief").call(run_input={'question': 'What are the main approaches to reducing hallucination in LLM-based agents?', 'depth': 'quick', 'sourceUrls': ['https://en.wikipedia.org/wiki/Hallucination_(artificial_intelligence)', 'https://en.wikipedia.org/wiki/Retrieval-augmented_generation'], 'search': True})
items = client.dataset(run["defaultDatasetId"]).list_items().items

Node.js

import { ApifyClient } from 'apify-client';
const client = new ApifyClient({ token: process.env.APIFY_TOKEN });
const run = await client.actor('physealabs/research-brief').call({"question": "What are the main approaches to reducing hallucination in LLM-based agents?", "depth": "quick", "sourceUrls": ["https://en.wikipedia.org/wiki/Hallucination_(artificial_intelligence)", "https://en.wikipedia.org/wiki/Retrieval-augmented_generation"], "search": true});
const { items } = await client.dataset(run.defaultDatasetId).listItems();

You can call this Actor from an agent or LLM tool that can send HTTP requests to the Apify API. Keep the Apify token in a secret store.

FAQ

Do I have to provide source URLs?

No. The Actor can search for public sources when search is true.

What does depth change?

It changes the source cap: 3 for quick, 6 for standard, and 10 for deep.

What happens if a page cannot be read?

The source row is kept with status set to error.