bookOverview

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 Documentationarrow-up-right.

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 → Componentarrow-up-right

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 → Pipelinearrow-up-right

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

GLChat Deep Research Mode

Reference: GLChat → Deep Researcharrow-up-right


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.

GLChat DeepResearch Pipeline

Reference: GLChat → GLChat DeepResearcharrow-up-right


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() interface

  • emits 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 Systemsarrow-up-right Deep Research

  • PerplexityDeepResearcher → Perplexity Sonar Deep Research

  • GLDeepResearcher → GL Open DeepResearch Service

chevron-rightMore on GLDeepResearcherhashtag

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.

GL SDK DeepResearcher Component

Reference: GL SDK → Deep Researcherarrow-up-right


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.

GL Open DeepResearch Service

Reference: GL Open DeepResearch → Introductionarrow-up-right


End-to-End Architecture

This diagram shows how all layers connect, from the user to execution.

End to End Architecture

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