Conversation
Add factory functions that provide a simpler API for constructing query objects to use with search_documents(): - text_query(field, query, boost=None, slop=None) - Creates a TextQuery - vector_query(field, values=None, sparse_values=None) - Creates a VectorQuery Both functions are exported from the pinecone package for convenient imports. Linear: SDK-109
…actory-functions-text_query-vector_query
…arch API Add response model classes for the document search API: - Document class with id, score, and dynamic field access via attribute, dict-style, and safe get() methods - DocumentSearchResponse class wrapping documents list with usage info - Unit tests for all access patterns and edge cases - Export classes via lazy imports in pinecone module Closes SDK-110
…t-response-models
…earch Adds the search_documents() method to both Index and IndexAsyncio classes to enable document-centric search using text queries and vector queries. - Add search_documents_request factory method for building API requests - Wire up to DocumentOperationsApi for alpha API endpoint - Support TextQuery for full-text search and VectorQuery for similarity search - Support metadata filtering including $text_match operator - Support field selection with include_fields parameter - Convert OpenAPI responses to DocumentSearchResponse dataclass - Add comprehensive unit tests Linear: SDK-111
There was a problem hiding this comment.
Cursor Bugbot has reviewed your changes and found 1 potential issue.
Bugbot Autofix is OFF. To automatically fix reported issues with Cloud Agents, enable Autofix in the Cursor dashboard.
…ponse Fixes a bug where search_documents() would always return empty results because it was checking for 'hits' attribute which doesn't exist on the OpenAPI DocumentSearchResponse model. The correct attribute is 'documents'. Found by Cursor Bugbot.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Implements the
search_documents()method for bothIndexandIndexAsyncioclasses to enable document-centric search using the Full-Text Search (FTS) alpha API.search_documents()method that acceptsTextQueryorVectorQueryfor flexible scoring$text_matchoperator for FTS filteringDocumentSearchResponsewith easy-to-useDocumentobjectsUsage Examples
Text Search
Vector Search with FTS Filter
Async Usage
Test Plan
Related
Note
Medium Risk
Introduces new request/response shaping around an alpha OpenAPI endpoint; main risk is mismatches with evolving API response fields or filters leading to runtime issues.
Overview
Enables document-centric search by adding
search_documents()toIndex,IndexAsyncio, andIndexInterface, backed by the OpenAPIDocumentOperationsApi/AsyncioDocumentOperationsApi.Adds
IndexRequestFactory.search_documents_request()to buildDocumentSearchRequestfromTextQuery/VectorQuery, with support for optional metadatafilter(including$text_match) andinclude_fields(special-casing['*']to"*"). Results are normalized into aDocumentSearchResponsecontainingDocumentobjects plususage/_response_info.Includes new unit tests covering request construction for text/vector/sparse queries, filters,
include_fieldshandling, andDocument/DocumentSearchResponsebehaviors.Written by Cursor Bugbot for commit 600106a. This will update automatically on new commits. Configure here.