dataset_chat · git:20260906.f9cef19 · 2026-09-06 · sha256 3aeaa0cc05ed23dd
dataset_chat git:20260906.f9cef19A
Immutable. This exact content is served forever at /api/v1/blob/3aeaa0cc05ed23dd.
--- name: dataset_chat description: Answer questions from a named startup or community dataset using retrieved evidence. Use for grounded Markdown or structured JSON; retrieval can synchronize and write dataset state. --- # Dataset chat Retrieve dataset evidence and pass it to the shared text-generation service. ## Inputs and outputs The async `dataset_chat(dataset_name, queries, prompt, ...)` returns Markdown, not an insight artifact. Queries accept a string or list; `max_chunks=25` and `strict_insufficient_context=True` are defaults. `dataset_chat_json(..., schema, reviewer=None, ...)` is the structured adapter, returning a dictionary/list or `None`. It uses shared schema validation and review. Both accept a `cacheable_prompt_prefix`. ## Workflow and dependencies Search through `lib.datasets.search.dataset_search(..., raise_on_error=True)`, render chunks with source/page metadata, limit supplied context to the character budget, and call `generate_markdown` or `generate_json`. An oversized first chunk can be truncated. Context budgeting currently uses `OLLAMA_CONTEXT_LENGTH_MAX`, including for other configured providers. Use the shared [installation guide](../../docs/installation-and-operations.md) for setup. Parsing is in-process Docling; storage is local and generation/embedding endpoints are configurable. This skill does not depend on the `llm_chat` CLI. ## Side effects and failure behavior Search may convert and index documents. The skill saves no report and manages no completed-answer cache. Provider and retrieval failures propagate. Empty queries/prompts or zero hits normally skip generation. Markdown returns the configured fallback marker; JSON returns `None`. Disabling strict Markdown grounding changes the prompt, not the zero-hit behavior. The JSON adapter's existing `allow_empty_retrieval=True` permits zero-hit generation when a nonempty shared prefix is supplied. Batch audit uses this path for every check. Citation truth and grounding are prompt requirements, not established by schema validation. ## Usage ```bash conda run -n sictic-env python -m skills.harness '/dataset_chat "<DATASET>" "What evidence supports revenue?"' conda run -n sictic-env python -m skills.harness '/sync "<DATASET>"' ``` The direct CLI has `search`, `chat` and `sync` commands. Its retained `sync --force` flag does not force reprocessing in the current ingestion API. Direct search uses the search API's default error policy; generated answers use strict retrieval errors. ## References - [Implementation](dataset_chat.py), [direct CLI](__main__.py) - [Retrieval and synchronization](../standards_and_architecture/SKILL.md#search-and-evidence) - [Generation contracts](../standards_and_architecture/SKILL.md#model-calls)