SPARKIT
← Back to blog

Equip your agent with deep research in one line of code

from sparkit_science import SparkitClient
SparkitClient().research(
    "What gene should I knock out to prevent C. glutamicum "
    "from degrading p-coumaric acid?"
)

That is one POST to a real API. It returns a cited Markdown report in about 90 seconds. We shipped that integration because of what we learned spending a day with five "deep research" tools.

The setup

We picked a hard real question from HLE-Gold (the gold-standard subset of Humanity's Last Exam):

You want to engineer Corynebacterium glutamicum to produce p-coumaric acid so you introduce the appropriate biosynthetic genes. However, the produced coumarate is rapidly degraded. What gene should you knock out to prevent degradation of the desired product?

The known correct answer is phdA — the gene encoding the acyl-CoA ligase that catalyzes the first committed step of phenylpropanoid catabolism in C. glutamicum. Naming it requires reading the phd-cluster literature and identifying the entry-step enzyme. Direct LLMs (Claude Opus 4.7, GPT-5.5) miss this in a single turn — that is why HLE-Gold exists in the first place.

We sent the same question, verbatim, to five tools:

  • Perplexity
  • ChatGPT Deep Research (OpenAI)
  • Gemini Deep Research (Google)
  • Elicit
  • SPARKIT (one POST to /v1/research)

Finding 1: they all got it right

Five for five on phdA. The era of "the agent gets the wrong answer" on solid-literature questions like this one is over. Every tool we tested has web retrieval, multi-step reasoning, and access to enough literature to land the canonical answer.

We do not think correctness is a useful axis to compare these tools on anymore. It is table stakes.

Finding 2: verbosity and wait time vary by 100×+

Same question. Same correct answer. Wildly different word counts and wait times:

ToolTime to answerWords returnedShape
Perplexity~10s~40Two sentences
Elicit~15s~70The answer + a follow-up offer
SPARKIT~90s~500Sectioned Markdown report + JSON sources
ChatGPT Deep Research5–10 min~3,500Multi-section memo with experimental plan
Gemini Deep Research5–15 min~6,000+A treatise

Two things stand out. Gemini Deep Research returned ~150× more words than Perplexity to give the same one-word answer. And the deep-research products (ChatGPT DR, Gemini DR) made you wait 3 to 10× longer than SPARKIT for an answer that converges on the same gene. If you are reading the memo in a UI and have time to wait, that is a fair tradeoff. If you are calling this from an agent loop or a user-facing backend, a five-to-fifteen-minute wait is a non-starter.

What each tool actually returned

In increasing order of length.

Perplexity

"Knock out phdA. In Corynebacterium glutamicum, the phd phenylpropanoid degradation pathway consumes p-coumaric acid, and deleting phdA was specifically used to prevent CoA-activation and product loss."

Forty words, in seconds. If your job is "give me the answer," Perplexity is hard to beat. Chat-shaped, not memo-shaped — which is the right answer for most lookups.

Elicit

"Knock out phdA. In Corynebacterium glutamicum, the phenylpropanoid degradation genes are the phd cluster, and the pathway paper showed that deleting phdA, phdB, phdC, or phdE abolished growth on phenylpropanoids, while the p-coumarate production paper says product consumption was prevented by abolishing essential reactions in that degradation pathway."

Roughly the same speed and brevity as Perplexity. Across other test questions Elicit consistently ends with a "want me to dig deeper?" follow-up — for an academic audience that wants conversational follow-up, it is the most pleasant of the five.

SPARKIT

"Knock out phdA, the gene encoding the acyl:CoA ligase (a 4-coumarate:CoA ligase / phenylpropanoid-CoA synthetase) that catalyzes the first committed step of phenylpropanoid catabolism in Corynebacterium glutamicum. Deleting phdA abolishes the CoA-activation of p-coumarate and thereby prevents its endogenous degradation, allowing p-coumaric acid to accumulate."

Plus a structured sources array with DOIs and citation counts, plus a confidence score (0.95 here), plus the rest of the report (mechanism, alternative knockouts, phdB / phdC / phdE discussion). The agent trace: 9 iterations, 22 pieces of evidence, ~84 seconds. Designed to be called from a backend, not stared at in a chat window.

ChatGPT Deep Research

ChatGPT Deep Research returned a multi-section research memo. Key excerpts:

Executive summary

The single best knockout target is phdA … crucially for p-coumarate production, deleting phdA in an ATCC 13032-derived p-coumarate production background increased p-coumarate titer from 75 ± 0.3 mg/L to 218 ± 9.3 mg/L and improved growth.

Experimental validation

StepWhat to doExpected result
Construct the mutantMake a scarless in-frame ΔphdAViable strain on glucose or rich medium
Substrate-stability assayGrow parent and ΔphdA with low-mM p-coumarate; sample supernatant by HPLC/UPLC or LC-MSΔphdA shows markedly improved extracellular p-coumarate stability
Complementation controlExpress phdA from a plasmid in the ΔphdA mutant under a modest promoterRestoration of p-coumarate consumption

We will concede this honestly: ChatGPT Deep Research delivered the most rigorous output of the five. A senior researcher could hand the validation plan to a junior lab member and get a defensible experiment out of it. If your job is "write me a research memo I can act on," it is genuinely impressive.

It also took ~5–10 minutes to run, requires the ChatGPT Plus / Pro subscription UI, and has no API. So you cannot put it in a pipeline.

Gemini Deep Research

Gemini Deep Research returned 6,000+ words. The answer (phdA) appears in the third paragraph. The remaining ~5,500 words include:

  • A section on the taxonomic evolution and phenotypic plasticity of phenylpropanoid degradation enzymes
  • A subsection comparing C. glutamicum's β-oxidative side-chain removal to Bacillus subtilis's decarboxylation pathway
  • A subsection on cytochrome P450 metabolism in Yarrowia lipolytica
  • A multi-paragraph overview of CRISPR interference tooling in C. glutamicum
  • A discussion of lignin valorization in industrial biorefineries, including market context
  • LaTeX-style math notation rendered as raw text ($\beta\text{-oxidation}$, $p\text{-coumaroyl-CoA}$)
  • A section titled "Industrial Scale-up and Lignin Valorization"

You did not ask about lignin valorization market context.

If you genuinely want a textbook-style background essay around your research question, Gemini DR will produce one — after you wait 5 to 15 minutes for it to generate. If you want the answer, you will then spend another three minutes scrolling to find it.

Which tool should you use?

Use caseToolWait
Quick lookup; you want the answer right awayPerplexity~10s
Conversational follow-up; academic literature flavorElicit~15s
Memo-style deep dive with experimental planChatGPT Deep Research5–10 min
Background essay around a questionGemini Deep Research5–15 min
Programmatic / agent / backend integrationSPARKIT~90s

The bottom row is the wedge — and notice the wait column. SPARKIT is the only tool that returns a sectioned, cited research report on the same order of seconds-to-a-minute as the chat-shaped quick-answer tools, while the long-form deep-research products take an order of magnitude longer.

The integration gap

Of the five tools we tested, only two have a meaningful programmatic surface for deep research:

  • Perplexity has an API, but it returns the same chat-shaped quick answers — not the agentic deep-research mode.
  • SPARKIT is API-first by design. Same agent, same correctness, same cited sources, returned as structured JSON in ~90 seconds.

ChatGPT Deep Research and Gemini Deep Research are UI-only at the time of writing. Elicit's API exists but is shaped around their literature-search UX, not arbitrary research questions. If you are trying to add "research a question, return cited evidence" to an agent or a backend pipeline, the option set narrows fast — and even if a competitor did expose an API, a 5-to-15-minute round trip is hard to design around. Holding a user-facing request open for that long is uncomfortable; queuing the call into a background job adds operational complexity. SPARKIT's sub-two-minute turnaround sits in the sweet spot where you can either await it inline or fire-and-webhook without much ceremony.

Which is why we built SPARKIT around the API surface from day one:

from sparkit_science import SparkitClient

client = SparkitClient(api_key="sk_sparkit_...")
job = client.research(
    question="What gene should I knock out to prevent C. glutamicum "
             "from degrading p-coumaric acid?",
    response_format="full",
    include_citations=True,
)

print(job.result.answer_text)        # Markdown report
for src in job.result.sources:       # structured citations
    print(f"[{src.id}] {src.title} ({src.year}) {src.doi}")

That is the integration. Async via callback_url if you do not want to block. Pricing starts at $10 for 5 queries — no subscription required to evaluate it.

Methodology

  • Question: the C. glutamicum / p-coumaric acid question above, sourced from HLE-Gold.
  • Date: April 2026.
  • Each tool was given the question once, in a fresh context, with default settings. No prompt engineering. Same exact question text for all five.
  • Results were judged correct against the HLE-Gold answer key, which names phdA as the canonical answer.
  • One question is not a benchmark. Verbosity ratios this large hold up across the other questions we have tested informally, but if you want a rigorous head-to-head you should run your own.

We are a SPARKIT team, so we are not unbiased. We have tried to be honest about where the others win — Perplexity's speed, Elicit's UX, ChatGPT Deep Research's rigor, Gemini Deep Research's appetite for context. The integration story is what is left when correctness is no longer the differentiator.

Where to go next

  • Try a question of your own — the playground in the dashboard is the same API.
  • Start with Try-it — $10 for 5 queries, no subscription. Enough to evaluate against your own questions before you commit to a tier.
  • Ship it into your agentpip install sparkit-science, mint a key at app.sparkit.science/keys, one POST. Full reference in the API docs.

If you find a question where SPARKIT gets it wrong and one of the others gets it right, tell us — that is exactly the feedback we want.