Overview
Note: This page provides an overview of Deep Research across the entire GL Ecosystem (GLChat, SDK, and GL Open DeepResearch service). For documentation specific to the GL Open DeepResearch service (API, profiles, deployment), start with the GL Open DeepResearch Overview or GL Open DeepResearch Documentation.
This page explains Deep Research in the GL Ecosystem in a clear, end-to-end way.
Deep Research is not a single system. It is a composed capability spanning the chat experience users interact with, backend orchestration pipelines, developer-facing SDK abstractions, and a dedicated service that executes deep research tasks. Each layer exists to solve a specific problem and has a clearly defined responsibility.
Core Concepts
Component
A Component is a reusable, asynchronous unit of logic with a single execution entrypoint (run()), designed to be composed inside pipelines.
Components are library-level building blocks.
Reference: GL SDK → Component
Pipeline
A Pipeline is an ordered sequence of Steps (Components or custom logic) that:
share a typed State
execute step-by-step
produce a final output
Pipelines allow complex behavior to be composed without hard-coding logic.
Reference: GL SDK → Pipeline
Service vs SDK
It is important to distinguish between services and SDKs, while recognizing that services are often delivered together with language-binding SDKs, whereas library-level SDKs are independent of any single service.
• Service
A Service is a remote system that provides functionality over the network.
It typically includes:
a remote API (HTTP / streaming / webhooks)
one or more language-binding SDKs provided for developer convenience
From a product perspective, the API and its language-binding SDKs together are considered part of the service.
• Language-Binding SDK
A Language-Binding SDK is a thin, language-specific client that runs in-process and calls a service’s API.
It:
wraps network calls
handles authentication and request/response serialization
does not define business logic or behavior
Although it runs locally, it is conceptually part of the service offering, rather than a standalone abstraction.
• Library-Level SDK
A Library-Level SDK is pure in-process code that defines abstractions, interfaces, and composition patterns.
It:
is not itself a network service
is not tied to the existence of any single service
may call multiple services via their language-binding SDKs
This is where reusable developer-facing abstractions live.
Why This Distinction Matters
In practice, most confusion comes not from services themselves, but from the different kinds of SDKs that interact with them.
This document distinguishes between language-binding SDKs, which exist to call a specific service, and library-level SDKs, which exist to define abstractions and structure within an application.
I. GLChat Deep Research Mode (GLChat Client — User-Facing)
What It Is
GLChat Deep Research Mode is a chat interaction mode in the GLChat web and mobile native applications.
When enabled, GLChat performs structured, multi-step research instead of a simple conversational response.
From the user’s perspective:
Enable Deep Research
Ask a question
Receive a detailed, sourced, structured answer

Reference: GLChat → Deep Research
II. GLChat DeepResearch (GLChat Backend — Experience-Layer Pipeline)
What It Is
GLChat DeepResearch is an experience-layer pipeline in the GLChat backend.
An experience-layer pipeline is responsible for shaping user-facing behavior: interpreting user intent, applying product-level settings, and preparing results for presentation. It defines product behavior, not execution infrastructure.
Responsibilities
GLChat DeepResearch handles:
Pre-processing
gathering and preparing relevant context (such as attachments, conversation history, memory)
interpreting user intent and research requirements
determining the appropriate next action (for example, whether deep research is needed, and how or when it should proceed)
Profile Selection
applying the user’s selected profile from GLChat Deep Research Mode
resolving to an appropriate effective profile based on product policy, system constraints, and available specialized profiles
Examples of profiles include:
Essentials — concise, focused research
Comprehensive — broader, deeper research
Internal — deep research over internal documents
Deep Research Invocation
invoking a DeepResearcher component with the selected profile and prepared inputs
Post-processing
structuring and preparing research results for presentation in the chat experience
applying product-level policies before delivering the final response
Pipeline Structure
GLChat DeepResearch is implemented as a Pipeline composed of multiple steps, one of which is a DeepResearcher Component.

Reference: GLChat → GLChat DeepResearch
III. DeepResearcher (GL SDK — Library-Level SDK Abstraction)
What It Is
DeepResearcher is a library-level SDK Component that defines a unified interface for executing deep research.
It is backend-agnostic.
Conceptually:
“I want deep research, I don’t care which engine runs it.”
What It Does
DeepResearcher:
exposes a consistent
research()interfaceemits progress events
returns structured research results
hides backend differences from pipelines
Implementations
Each DeepResearcher implementation maps to a concrete backend:
GoogleDeepResearcher → Google Gemini Deep Research
OpenAIDeepResearcher → OpenAI Deep Research
ParallelDeepResearcher → Parallel Web Systems Deep Research
PerplexityDeepResearcher → Perplexity Sonar Deep Research
GLDeepResearcher → GL Open DeepResearch Service
More on GLDeepResearcher
GLDeepResearcher (Service Adapter)
GLDeepResearcher is a DeepResearcher implementation that acts as a service adapter.
It:
lives in the library-level SDK
uses the GL Open DeepResearch Service Client SDK (language-binding SDK)
translates
research()calls into GL Open DeepResearch API calls
GLDeepResearcher ensures that GL Open DeepResearch is just another backend, with no special treatment.

Reference: GL SDK → Deep Researcher
IV. GL Open DeepResearch (GL Open DeepResearch — Backend Execution Service)
What It Is
GL Open DeepResearch is a backend execution service.
It exposes an API and runs open-source deep research orchestrator libraries in a production-grade environment.
Responsibilities
GL Open DeepResearch owns:
task groups and tasks
workers and job queues
execution lifecycle
tool injection
structured events (streaming and webhooks)
What It Explicitly Does NOT Do
GL Open DeepResearch does not handle:
UX logic
reasoning design
All reasoning is delegated to upstream orchestrator libraries.
GL Open DeepResearch is infrastructure, not a product layer.

Reference: GL Open DeepResearch → Introduction
End-to-End Architecture
This diagram shows how all layers connect, from the user to execution.

Why This Architecture Exists
This architecture separates concerns so that user experience, product behavior, library abstractions, and execution infrastructure each have a clear and well-defined responsibility.
Each part of the system exists to solve a different kind of problem:
GLChat Deep Research Mode focuses on the user experience, providing a clear and guided way for users to request deep research through chat.
GLChat DeepResearch focuses on product behavior, interpreting user intent, applying product-level policies, and shaping how deep research behaves within the GLChat experience.
DeepResearcher focuses on abstraction, providing a unified, library-level SDK interface that allows pipelines to invoke deep research without being tied to any specific backend.
GL Open DeepResearch focuses on execution, providing a production-grade, self-managed service built on open-source deep research engines to reliably run deep research workloads.
By keeping these responsibilities separate:
user-facing behavior does not leak into execution infrastructure
product logic remains independent of specific deep research engines
execution can be evolved, operated, and scaled without changing higher-level logic
the system remains easier to reason about, maintain, and extend over time
Summary
GLChat Deep Research Mode is a user-facing chat mode in GLChat that enables structured deep research interactions.
GLChat DeepResearch is an experience-layer pipeline in the GLChat that defines product behavior and shapes how deep research is performed and presented.
DeepResearcher is a library-level SDK abstraction that provides a unified interface for invoking deep research, independent of any specific backend.
GL Open DeepResearch is a production-grade, self-managed execution service built on open-source deep research engines.
Last updated
