Skip to main content
Semantic search helps locate relevant filing language when an exact phrase is too narrow. It does not establish materiality, completeness, or legal risk. This journey produces a queue whose entries can be reopened in the cited SEC filing.

Prerequisites

  • SECAPI_API_KEY, curl, and jq; Node.js 18+ for the multi-year script.
  • A bounded company and form scope. The example uses NVIDIA 10-K filings.

1. Search the latest scoped 10-K

Expected output: a ranked list of at most ten cited passages. Save the query, filters, accession, source URL, section key, character offsets, snippet, requestId, and traceparent. The rank helps navigate results; it is not a conclusion about the disclosure.

2. Create a filing-year review queue

Create compare-risk-factors.mjs:
Expected output: one source-linked queue per requested filing year. Open each cited section and compare like-for-like reporting periods before describing a change in wording or coverage.

Failure modes

  • q is required; mode must be keyword, semantic, or hybrid; limit must be 1 through 100.
  • An empty result can reflect the issuer, form, year, or available indexed text. It is not evidence that the issuer lacks the risk.
  • Preserve sections.degradedState when present. A degraded retrieval state is a reason to review the source carefully, not to silently treat the result as equivalent to another run.
  • Do not discard citation fields or request metadata; without them a reviewer cannot reproduce the result.

Next step

Retrieve the cited source with filing section retrieval before adding any interpretation to a memo, model, or alert.