SYMBOL INDEX (2934 symbols across 243 files) FILE: js/sdk/__tests__/CollectionsIntegrationSuperUser.test.ts constant TEST_OUTPUT_DIR (line 5) | const TEST_OUTPUT_DIR = path.join(__dirname, "test-output"); FILE: js/sdk/__tests__/ConversationsIntegrationSuperUser.test.ts constant TEST_OUTPUT_DIR (line 7) | const TEST_OUTPUT_DIR = path.join(__dirname, "test-output"); FILE: js/sdk/__tests__/DocumentsIntegrationSuperUser.test.ts constant TEST_OUTPUT_DIR (line 7) | const TEST_OUTPUT_DIR = path.join(__dirname, "test-output"); function findOverlap (line 484) | function findOverlap(str1: string, str2: string): string { FILE: js/sdk/__tests__/GraphsIntegrationSuperUser.test.ts constant TEST_OUTPUT_DIR (line 7) | const TEST_OUTPUT_DIR = path.join(__dirname, "test-output"); FILE: js/sdk/__tests__/RetrievalIntegrationSuperUser.test.ts function readStream (line 26) | async function readStream( FILE: js/sdk/__tests__/UsersIntegrationSuperUser.test.ts constant TEST_OUTPUT_DIR (line 7) | const TEST_OUTPUT_DIR = path.join(__dirname, "test-output"); FILE: js/sdk/src/baseClient.ts function handleRequestError (line 15) | function handleRequestError(response: AxiosResponse): void { method constructor (line 46) | constructor( method _makeRequest (line 69) | protected async _makeRequest( method handleStreamingRequest (line 185) | private async handleStreamingRequest( method _ensureAuthenticated (line 238) | protected _ensureAuthenticated(): void { method setTokens (line 244) | setTokens(accessToken: string, refreshToken: string): void { method setApiKey (line 249) | setApiKey(apiKey: string): void { method setProjectName (line 256) | setProjectName(projectName: string): void { method unsetProjectName (line 263) | unsetProjectName(): void { FILE: js/sdk/src/r2rClient.ts type RefreshTokenResponse (line 20) | type RefreshTokenResponse = { type R2RClientOptions (line 27) | interface R2RClientOptions { class r2rClient (line 40) | class r2rClient extends BaseClient { method constructor (line 56) | constructor( method setupResponseInterceptor (line 105) | private setupResponseInterceptor() { method makeRequest (line 190) | public makeRequest( method getRefreshToken (line 198) | public getRefreshToken(): string | null { method setTokens (line 202) | public setTokens( FILE: js/sdk/src/types.ts type UnprocessedChunk (line 1) | interface UnprocessedChunk { type ResultsWrapper (line 10) | interface ResultsWrapper { type PaginatedResultsWrapper (line 14) | interface PaginatedResultsWrapper extends ResultsWrapper { type GenericBooleanResponse (line 19) | interface GenericBooleanResponse { type GenericMessageResponse (line 23) | interface GenericMessageResponse { type ChunkResponse (line 28) | interface ChunkResponse { type CollectionResponse (line 39) | interface CollectionResponse { type CommunityResponse (line 53) | interface CommunityResponse { type ConversationResponse (line 67) | interface ConversationResponse { type Message (line 74) | interface Message { type MessageResponse (line 84) | interface MessageResponse { type DocumentResponse (line 90) | interface DocumentResponse { type EntityResponse (line 109) | interface EntityResponse { type GraphResponse (line 121) | interface GraphResponse { type IndexMeasure (line 132) | enum IndexMeasure { type IngestionResponse (line 139) | interface IngestionResponse { type UpdateResponse (line 145) | interface UpdateResponse { type IndexConfig (line 151) | interface IndexConfig { type PromptResponse (line 163) | interface PromptResponse { type RelationshipResponse (line 173) | interface RelationshipResponse { type ChunkSearchSettings (line 188) | interface ChunkSearchSettings { type GenerationConfig (line 195) | interface GenerationConfig { type HybridSearchSettings (line 211) | interface HybridSearchSettings { type GraphSearchSettings (line 218) | interface GraphSearchSettings { type SearchSettings (line 228) | interface SearchSettings { type VectorSearchResult (line 243) | interface VectorSearchResult { type KGSearchResultType (line 253) | type KGSearchResultType = type GraphSearchResult (line 259) | interface GraphSearchResult { type CombinedSearchResponse (line 267) | interface CombinedSearchResponse { type ServerStats (line 276) | interface ServerStats { type SettingsResponse (line 283) | interface SettingsResponse { type TokenType (line 291) | type TokenType = "access" | "refresh"; type Token (line 293) | interface Token { type TokenResponse (line 298) | interface TokenResponse { type User (line 303) | interface User { type LoginResponse (line 322) | interface LoginResponse { type StorageTypeLimit (line 327) | interface StorageTypeLimit { type StorageLimits (line 333) | interface StorageLimits { type UsageLimit (line 339) | interface UsageLimit { type RouteUsage (line 345) | interface RouteUsage { type Usage (line 350) | interface Usage { type SystemDefaults (line 356) | interface SystemDefaults { type LimitsResponse (line 362) | interface LimitsResponse { type WrappedBooleanResponse (line 371) | type WrappedBooleanResponse = ResultsWrapper; type WrappedGenericMessageResponse (line 372) | type WrappedGenericMessageResponse = type WrappedChunkResponse (line 376) | type WrappedChunkResponse = ResultsWrapper; type WrappedChunksResponse (line 377) | type WrappedChunksResponse = PaginatedResultsWrapper; type WrappedCollectionResponse (line 380) | type WrappedCollectionResponse = ResultsWrapper; type WrappedCollectionsResponse (line 381) | type WrappedCollectionsResponse = PaginatedResultsWrapper< type WrappedCommunityResponse (line 386) | type WrappedCommunityResponse = ResultsWrapper; type WrappedCommunitiesResponse (line 387) | type WrappedCommunitiesResponse = PaginatedResultsWrapper< type WrappedConversationMessagesResponse (line 392) | type WrappedConversationMessagesResponse = ResultsWrapper< type WrappedConversationResponse (line 395) | type WrappedConversationResponse = type WrappedConversationsResponse (line 397) | type WrappedConversationsResponse = PaginatedResultsWrapper< type WrappedMessageResponse (line 400) | type WrappedMessageResponse = ResultsWrapper; type WrappedMessagesResponse (line 401) | type WrappedMessagesResponse = PaginatedResultsWrapper< type WrappedDocumentResponse (line 406) | type WrappedDocumentResponse = ResultsWrapper; type WrappedDocumentsResponse (line 407) | type WrappedDocumentsResponse = PaginatedResultsWrapper< type WrappedEntityResponse (line 412) | type WrappedEntityResponse = ResultsWrapper; type WrappedEntitiesResponse (line 413) | type WrappedEntitiesResponse = PaginatedResultsWrapper; type WrappedGraphResponse (line 416) | type WrappedGraphResponse = ResultsWrapper; type WrappedGraphsResponse (line 417) | type WrappedGraphsResponse = PaginatedResultsWrapper; type WrappedIngestionResponse (line 420) | type WrappedIngestionResponse = ResultsWrapper; type WrappedMetadataUpdateResponse (line 421) | type WrappedMetadataUpdateResponse = ResultsWrapper; type WrappedUpdateResponse (line 422) | type WrappedUpdateResponse = ResultsWrapper; type WrappedVectorIndicesResponse (line 423) | type WrappedVectorIndicesResponse = ResultsWrapper; type WrappedPromptResponse (line 426) | type WrappedPromptResponse = ResultsWrapper; type WrappedPromptsResponse (line 427) | type WrappedPromptsResponse = PaginatedResultsWrapper; type WrappedRelationshipResponse (line 430) | type WrappedRelationshipResponse = ResultsWrapper; type WrappedRelationshipsResponse (line 431) | type WrappedRelationshipsResponse = PaginatedResultsWrapper< type WrappedVectorSearchResponse (line 436) | type WrappedVectorSearchResponse = ResultsWrapper; type WrappedSearchResponse (line 437) | type WrappedSearchResponse = ResultsWrapper; type WrappedEmbeddingResponse (line 438) | type WrappedEmbeddingResponse = ResultsWrapper; type WrappedSettingsResponse (line 441) | type WrappedSettingsResponse = ResultsWrapper; type WrappedServerStatsResponse (line 442) | type WrappedServerStatsResponse = ResultsWrapper; type WrappedTokenResponse (line 445) | type WrappedTokenResponse = ResultsWrapper; type WrappedUserResponse (line 446) | type WrappedUserResponse = ResultsWrapper; type WrappedUsersResponse (line 447) | type WrappedUsersResponse = PaginatedResultsWrapper; type WrappedLimitsResponse (line 448) | type WrappedLimitsResponse = ResultsWrapper; type WrappedLoginResponse (line 449) | type WrappedLoginResponse = ResultsWrapper; type R2RResults (line 454) | interface R2RResults { type PaginatedR2RResult (line 463) | interface PaginatedR2RResult extends R2RResults { type ApiKey (line 477) | interface ApiKey { type ApiKeyNoPriv (line 489) | interface ApiKeyNoPriv { type WrappedAPIKeyResponse (line 499) | type WrappedAPIKeyResponse = R2RResults; type WrappedAPIKeysResponse (line 504) | type WrappedAPIKeysResponse = PaginatedR2RResult; type DocumentSearchResult (line 507) | interface DocumentSearchResult { type PaginatedResultsWrapper (line 527) | interface PaginatedResultsWrapper { type WrappedDocumentSearchResponse (line 533) | type WrappedDocumentSearchResponse = PaginatedResultsWrapper< FILE: js/sdk/src/utils/typeTransformer.ts type CamelCase (line 4) | type CamelCase = S extends `${infer P}_${infer Q}` type CamelCaseKeys (line 11) | type CamelCaseKeys = { type SnakeCase (line 25) | type SnakeCase = S extends `${infer T}${infer U}` type SnakeCaseKeys (line 34) | type SnakeCaseKeys = { function ensureCamelCase (line 101) | function ensureCamelCase(input: T): CamelCaseKeys { function ensureSnakeCase (line 158) | function ensureSnakeCase(input: T): SnakeCaseKeys { FILE: js/sdk/src/utils/utils.ts function downloadBlob (line 1) | function downloadBlob(blob: Blob, filename: string): void { FILE: js/sdk/src/v3/clients/chunks.ts class ChunksClient (line 10) | class ChunksClient { method constructor (line 11) | constructor(private client: r2rClient) {} method create (line 24) | async create(options: { method update (line 43) | async update(options: { method retrieve (line 58) | async retrieve(options: { id: string }): Promise { method delete (line 67) | async delete(options: { id: string }): Promise { method list (line 79) | async list(options?: { FILE: js/sdk/src/v3/clients/collections.ts class CollectionsClient (line 17) | class CollectionsClient { method constructor (line 18) | constructor(private client: r2rClient) {} method create (line 26) | async create(options: { method list (line 43) | async list(options?: { method retrieve (line 72) | async retrieve(options: { id: string }): Promise { method listDocuments (line 119) | async listDocuments(options: { method addDocument (line 144) | async addDocument(options: { method removeDocument (line 160) | async removeDocument(options: { method listUsers (line 177) | async listUsers(options: { method addUser (line 198) | async addUser(options: { method removeUser (line 214) | async removeUser(options: { method extract (line 245) | async extract(options: { method export (line 276) | async export( method exportToFile (line 320) | async exportToFile(options: { method retrieveByName (line 337) | async retrieveByName(options: { FILE: js/sdk/src/v3/clients/conversations.ts class ConversationsClient (line 15) | class ConversationsClient { method constructor (line 16) | constructor(private client: r2rClient) {} method create (line 23) | async create(options?: { method list (line 42) | async list(options?: { method retrieve (line 66) | async retrieve(options: { method update (line 78) | async update(options: { method delete (line 96) | async delete(options: { id: string }): Promise { method addMessage (line 109) | async addMessage(options: { method updateMessage (line 140) | async updateMessage(options: { method export (line 170) | async export( method exportToFile (line 214) | async exportToFile(options: { method exportMessages (line 236) | async exportMessages( method exportMessagesToFile (line 280) | async exportMessagesToFile(options: { FILE: js/sdk/src/v3/clients/documents.ts type FileInput (line 28) | type FileInput = string | File | { path: string; name: string }; type SearchMode (line 31) | type SearchMode = "basic" | "advanced" | "custom"; type SearchSettings (line 32) | interface SearchSettings { class DocumentsClient (line 45) | class DocumentsClient { method constructor (line 46) | constructor(private client: r2rClient) {} method create (line 65) | async create(options: { method appendMetadata (line 253) | async appendMetadata(options: { method replaceMetadata (line 275) | async replaceMetadata(options: { method retrieve (line 292) | async retrieve(options: { id: string }): Promise { method export (line 395) | async export( method exportEntities (line 444) | async exportEntities(options: { method exportEntitiesToFile (line 497) | async exportEntitiesToFile(options: { method exportRelationships (line 540) | async exportRelationships(options: { method exportRelationshipsToFile (line 592) | async exportRelationshipsToFile(options: { method downloadZip (line 632) | async downloadZip(options: { method downloadZipToFile (line 684) | async downloadZipToFile(options: { method exportToFile (line 722) | async exportToFile(options: { method delete (line 754) | async delete(options: { id: string }): Promise { method listChunks (line 769) | async listChunks(options: { method listCollections (line 797) | async listCollections(options: { method deleteByFilter (line 824) | async deleteByFilter(options: { method extract (line 844) | async extract(options: { method listEntities (line 877) | async listEntities(options: { method listRelationships (line 907) | async listRelationships(options: { method deduplicate (line 947) | async deduplicate(options: { method search (line 983) | async search(options: { method createSample (line 1009) | async createSample(options?: { FILE: js/sdk/src/v3/clients/graphs.ts class GraphsClient (line 20) | class GraphsClient { method constructor (line 21) | constructor(private client: r2rClient) {} method list (line 30) | async list(options?: { method retrieve (line 54) | async retrieve(options: { method reset (line 70) | async reset(options: { method update (line 86) | async update(options: { method createEntity (line 107) | async createEntity(options: { method listEntities (line 137) | async listEntities(options: { method getEntity (line 162) | async getEntity(options: { method updateEntity (line 179) | async updateEntity(options: { method removeEntity (line 209) | async removeEntity(options: { method createRelationship (line 224) | async createRelationship(options: { method listRelationships (line 262) | async listRelationships(options: { method getRelationship (line 287) | async getRelationship(options: { method updateRelationship (line 304) | async updateRelationship(options: { method removeRelationship (line 342) | async removeRelationship(options: { method exportEntities (line 362) | async exportEntities(options: { method exportEntitiesToFile (line 405) | async exportEntitiesToFile(options: { method exportRelationships (line 428) | async exportRelationships(options: { method exportRelationshipsToFile (line 471) | async exportRelationshipsToFile(options: { method exportCommunities (line 494) | async exportCommunities(options: { method exportCommunitiesToFile (line 537) | async exportCommunitiesToFile(options: { method createCommunity (line 574) | async createCommunity(options: { method listCommunities (line 610) | async listCommunities(options: { method getCommunity (line 635) | async getCommunity(options: { method updateCommunity (line 652) | async updateCommunity(options: { method deleteCommunity (line 687) | async deleteCommunity(options: { method pull (line 719) | async pull(options: { method removeDocument (line 740) | async removeDocument(options: { method buildCommunities (line 772) | async buildCommunities(options: { FILE: js/sdk/src/v3/clients/indices.ts class IndiciesClient (line 8) | class IndiciesClient { method constructor (line 9) | constructor(private client: r2rClient) {} method create (line 17) | async create(options: { method list (line 40) | async list(options?: { method retrieve (line 65) | async retrieve(options: { method delete (line 81) | async delete(options: { FILE: js/sdk/src/v3/clients/prompts.ts class PromptsClient (line 9) | class PromptsClient { method constructor (line 10) | constructor(private client: r2rClient) {} method create (line 22) | async create(options: { method list (line 39) | async list(): Promise { method retrieve (line 52) | async retrieve(options: { method update (line 76) | async update(options: { method delete (line 103) | async delete(options: { name: string }): Promise { method settings (line 22) | async settings(): Promise { method status (line 31) | async status(): Promise { FILE: js/sdk/src/v3/clients/users.ts class UsersClient (line 21) | class UsersClient { method constructor (line 22) | constructor(private client: r2rClient) {} method create (line 34) | async create(options: { method sendVerificationEmail (line 65) | async sendVerificationEmail(options: { method delete (line 82) | async delete(options: { method verifyEmail (line 98) | async verifyEmail(options: { method login (line 113) | async login(options: { method loginWithToken (line 142) | async loginWithToken(options: { accessToken: string }): Promise { method logout (line 166) | async logout(): Promise { method refreshAccessToken (line 176) | async refreshAccessToken(): Promise { method changePassword (line 211) | async changePassword(options: { method requestPasswordReset (line 220) | async requestPasswordReset( method resetPassword (line 237) | async resetPassword(options: { method list (line 253) | async list(options?: { method retrieve (line 277) | async retrieve(options: { id: string }): Promise { method me (line 285) | async me(): Promise { method update (line 299) | async update(options: { method listCollections (line 333) | async listCollections(options: { method addToCollection (line 354) | async addToCollection(options: { method removeFromCollection (line 370) | async removeFromCollection(options: { method export (line 390) | async export( method exportToFile (line 430) | async exportToFile(options: { method createApiKey (line 448) | async createApiKey(options: { method listApiKeys (line 469) | async listApiKeys(options: { id: string }): Promise { method oauthGithubAuthorize (line 498) | async oauthGithubAuthorize(): Promise<{ redirect_url: string }> { method oauthGoogleCallback (line 502) | async oauthGoogleCallback(options: { method oauthGithubCallback (line 514) | async oauthGithubCallback(options: { FILE: py/core/agent/base.py class CombinedMeta (line 22) | class CombinedMeta(AsyncSyncMeta, ABCMeta): function sync_wrapper (line 26) | def sync_wrapper(async_gen): class R2RAgent (line 42) | class R2RAgent(Agent, metaclass=CombinedMeta): method __init__ (line 43) | def __init__(self, *args, **kwargs): method _generate_llm_summary (line 48) | async def _generate_llm_summary(self, iterations_count: int) -> str: method _reset (line 96) | def _reset(self): method arun (line 101) | async def arun( method process_llm_response (line 153) | async def process_llm_response( class R2RStreamingAgent (line 351) | class R2RStreamingAgent(R2RAgent): method __init__ (line 363) | def __init__(self, *args, **kwargs): method arun (line 369) | async def arun( method _handle_thinking (line 693) | async def _handle_thinking( method _add_tool_calls_message (line 733) | async def _add_tool_calls_message(self, calls_list, partial_text_buffer): method _create_tool_call_data (line 752) | def _create_tool_call_data(self, call_info): method _create_citation_payload (line 760) | def _create_citation_payload(self, short_id, payload): method _create_final_answer_payload (line 777) | def _create_final_answer_payload(self, answer_text, citations): class R2RXMLStreamingAgent (line 788) | class R2RXMLStreamingAgent(R2RStreamingAgent): method arun (line 817) | async def arun( method _parse_single_tool_call (line 1270) | def _parse_single_tool_call( class R2RXMLToolsAgent (line 1310) | class R2RXMLToolsAgent(R2RAgent): method process_llm_response (line 1341) | async def process_llm_response(self, response, *args, **kwargs): method _parse_single_tool_call (line 1447) | def _parse_single_tool_call( FILE: py/core/agent/rag.py class RAGAgentMixin (line 39) | class RAGAgentMixin: method __init__ (line 48) | def __init__( method _register_tools (line 72) | def _register_tools(self): method format_search_results_for_llm (line 102) | def format_search_results_for_llm( class R2RRAGAgent (line 115) | class R2RRAGAgent(RAGAgentMixin, R2RAgent): method __init__ (line 120) | def __init__( class R2RXMLToolsRAGAgent (line 165) | class R2RXMLToolsRAGAgent(RAGAgentMixin, R2RXMLToolsAgent): method __init__ (line 170) | def __init__( class R2RStreamingRAGAgent (line 215) | class R2RStreamingRAGAgent(RAGAgentMixin, R2RStreamingAgent): method __init__ (line 221) | def __init__( class R2RXMLToolsStreamingRAGAgent (line 269) | class R2RXMLToolsStreamingRAGAgent(RAGAgentMixin, R2RXMLStreamingAgent): method __init__ (line 281) | def __init__( FILE: py/core/agent/research.py class ResearchAgentMixin (line 35) | class ResearchAgentMixin(RAGAgentMixin): method __init__ (line 46) | def __init__( method _register_research_tools (line 74) | def _register_research_tools(self): method rag_tool (line 97) | def rag_tool(self) -> Tool: method reasoning_tool (line 121) | def reasoning_tool(self) -> Tool: method critique_tool (line 150) | def critique_tool(self) -> Tool: method python_execution_tool (line 180) | def python_execution_tool(self) -> Tool: method _rag (line 208) | async def _rag( method _reason (line 281) | async def _reason( method _critique (line 308) | async def _critique( method _execute_python_with_process_timeout (line 358) | async def _execute_python_with_process_timeout( method _format_python_results (line 426) | def _format_python_results(self, results: dict[str, Any]) -> str: method _format_search_results (line 473) | def _format_search_results(self, results) -> str: class R2RResearchAgent (line 478) | class R2RResearchAgent(ResearchAgentMixin, R2RRAGAgent): method __init__ (line 486) | def __init__( class R2RStreamingResearchAgent (line 537) | class R2RStreamingResearchAgent(ResearchAgentMixin, R2RStreamingRAGAgent): method __init__ (line 545) | def __init__( class R2RXMLToolsResearchAgent (line 597) | class R2RXMLToolsResearchAgent(ResearchAgentMixin, R2RXMLToolsRAGAgent): method __init__ (line 605) | def __init__( class R2RXMLToolsStreamingResearchAgent (line 652) | class R2RXMLToolsStreamingResearchAgent( method __init__ (line 662) | def __init__( FILE: py/core/base/agent/agent.py class Conversation (line 23) | class Conversation: method __init__ (line 24) | def __init__(self): method add_message (line 28) | async def add_message(self, message): method get_messages (line 32) | async def get_messages(self) -> list[dict[str, Any]]: class AgentConfig (line 41) | class AgentConfig(BaseModel): method create (line 49) | def create(cls: Type["AgentConfig"], **kwargs: Any) -> "AgentConfig": class Agent (line 59) | class Agent(ABC): method __init__ (line 60) | def __init__( method _register_tools (line 78) | def _register_tools(self): method _setup (line 81) | async def _setup( method tools (line 101) | def tools(self) -> list[Tool]: method tools (line 105) | def tools(self, tools: list[Tool]): method arun (line 109) | async def arun( method process_llm_response (line 119) | async def process_llm_response( method execute_tool (line 127) | async def execute_tool(self, tool_name: str, *args, **kwargs) -> str: method get_generation_config (line 133) | def get_generation_config( method handle_function_or_tool_call (line 174) | async def handle_function_or_tool_call( class RAGAgentConfig (line 258) | class RAGAgentConfig(AgentConfig): method create (line 288) | def create(cls: Type["AgentConfig"], **kwargs: Any) -> "AgentConfig": FILE: py/core/base/agent/tools/built_in/get_file_content.py class GetFileContentTool (line 10) | class GetFileContentTool(Tool): method __init__ (line 18) | def __init__(self): method execute (line 42) | async def execute( FILE: py/core/base/agent/tools/built_in/search_file_descriptions.py class SearchFileDescriptionsTool (line 8) | class SearchFileDescriptionsTool(Tool): method __init__ (line 13) | def __init__(self): method execute (line 35) | async def execute(self, query: str, *args, **kwargs): FILE: py/core/base/agent/tools/built_in/search_file_knowledge.py class SearchFileKnowledgeTool (line 8) | class SearchFileKnowledgeTool(Tool): method __init__ (line 13) | def __init__(self): method execute (line 34) | async def execute(self, query: str, *args, **kwargs): FILE: py/core/base/agent/tools/built_in/tavily_extract.py class TavilyExtractTool (line 11) | class TavilyExtractTool(Tool): method __init__ (line 16) | def __init__(self): method execute (line 41) | async def execute(self, url: str, *args, **kwargs): FILE: py/core/base/agent/tools/built_in/tavily_search.py class TavilySearchTool (line 11) | class TavilySearchTool(Tool): method __init__ (line 17) | def __init__(self): method execute (line 45) | async def execute(self, query: str, *args, **kwargs): FILE: py/core/base/agent/tools/built_in/web_scrape.py class WebScrapeTool (line 11) | class WebScrapeTool(Tool): method __init__ (line 17) | def __init__(self): method execute (line 42) | async def execute(self, url: str, *args, **kwargs): FILE: py/core/base/agent/tools/built_in/web_search.py class WebSearchTool (line 4) | class WebSearchTool(Tool): method __init__ (line 10) | def __init__(self): method execute (line 31) | async def execute(self, query: str, *args, **kwargs): FILE: py/core/base/agent/tools/registry.py class ToolRegistry (line 14) | class ToolRegistry: method __init__ (line 20) | def __init__( method _discover_built_in_tools (line 47) | def _discover_built_in_tools(self): method _discover_user_tools (line 98) | def _discover_user_tools(self): method get_tool_class (line 145) | def get_tool_class(self, tool_name: str): method list_available_tools (line 152) | def list_available_tools( method create_tool_instance (line 169) | def create_tool_instance( FILE: py/core/base/parsers/base_parser.py class AsyncParser (line 9) | class AsyncParser(ABC, Generic[T]): method ingest (line 11) | async def ingest(self, data: T, **kwargs) -> AsyncGenerator[str, None]: FILE: py/core/base/providers/auth.py class AuthConfig (line 27) | class AuthConfig(ProviderConfig): method supported_providers (line 37) | def supported_providers(self) -> list[str]: method validate_config (line 40) | def validate_config(self) -> None: class AuthProvider (line 44) | class AuthProvider(Provider, ABC): method __init__ (line 50) | def __init__( method _get_default_admin_user (line 71) | async def _get_default_admin_user(self) -> User: method create_access_token (line 77) | def create_access_token(self, data: dict) -> str: method create_refresh_token (line 81) | def create_refresh_token(self, data: dict) -> str: method decode_token (line 85) | async def decode_token(self, token: str) -> TokenData: method user (line 89) | async def user(self, token: str) -> User: method get_current_active_user (line 93) | def get_current_active_user(self, current_user: User) -> User: method register (line 97) | async def register(self, email: str, password: str) -> User: method send_verification_email (line 101) | async def send_verification_email( method verify_email (line 107) | async def verify_email( method login (line 113) | async def login(self, email: str, password: str) -> dict[str, Token]: method refresh_access_token (line 117) | async def refresh_access_token( method auth_wrapper (line 122) | def auth_wrapper( method change_password (line 210) | async def change_password( method request_password_reset (line 216) | async def request_password_reset(self, email: str) -> dict[str, str]: method confirm_password_reset (line 220) | async def confirm_password_reset( method logout (line 226) | async def logout(self, token: str) -> dict[str, str]: method send_reset_email (line 230) | async def send_reset_email(self, email: str) -> dict[str, str]: FILE: py/core/base/providers/base.py class InnerConfig (line 7) | class InnerConfig(BaseModel, ABC): class Config (line 12) | class Config: method create (line 18) | def create(cls: Type["InnerConfig"], **kwargs: Any) -> "InnerConfig": class AppConfig (line 32) | class AppConfig(InnerConfig): class ProviderConfig (line 84) | class ProviderConfig(BaseModel, ABC): class Config (line 91) | class Config: method validate_config (line 97) | def validate_config(self) -> None: method create (line 101) | def create(cls: Type["ProviderConfig"], **kwargs: Any) -> "ProviderCon... method supported_providers (line 116) | def supported_providers(self) -> list[str]: method from_dict (line 121) | def from_dict( class Provider (line 128) | class Provider(ABC): method __init__ (line 132) | def __init__(self, config: ProviderConfig, *args, **kwargs): FILE: py/core/base/providers/crypto.py class CryptoConfig (line 8) | class CryptoConfig(ProviderConfig): method supported_providers (line 12) | def supported_providers(self) -> list[str]: method validate_config (line 15) | def validate_config(self) -> None: class CryptoProvider (line 20) | class CryptoProvider(Provider, ABC): method __init__ (line 21) | def __init__(self, config: CryptoConfig): method get_password_hash (line 29) | def get_password_hash(self, password: str) -> str: method verify_password (line 35) | def verify_password( method generate_verification_code (line 43) | def generate_verification_code(self, length: int = 32) -> str: method generate_signing_keypair (line 48) | def generate_signing_keypair(self) -> Tuple[str, str, str]: method sign_request (line 60) | def sign_request(self, private_key: str, data: str) -> str: method verify_request_signature (line 66) | def verify_request_signature( method generate_api_key (line 74) | def generate_api_key(self) -> Tuple[str, str]: method hash_api_key (line 85) | def hash_api_key(self, raw_api_key: str) -> str: method verify_api_key (line 93) | def verify_api_key(self, raw_api_key: str, hashed_key: str) -> bool: method generate_secure_token (line 98) | def generate_secure_token(self, data: dict, expiry: datetime) -> str: method verify_secure_token (line 111) | def verify_secure_token(self, token: str) -> Optional[dict]: FILE: py/core/base/providers/database.py class DatabaseConnectionManager (line 22) | class DatabaseConnectionManager(ABC): method execute_query (line 24) | def execute_query( method execute_many (line 33) | async def execute_many(self, query, params=None, batch_size=1000): method fetch_query (line 37) | def fetch_query( method fetchrow_query (line 45) | def fetchrow_query( method initialize (line 53) | async def initialize(self, pool: Any): class Handler (line 57) | class Handler(ABC): method __init__ (line 58) | def __init__( method _get_table_name (line 66) | def _get_table_name(self, base_name: str) -> str: method create_tables (line 71) | def create_tables(self): class PostgresConfigurationSettings (line 75) | class PostgresConfigurationSettings(BaseModel): class LimitSettings (line 104) | class LimitSettings(BaseModel): method merge_with_defaults (line 109) | def merge_with_defaults( class MaintenanceSettings (line 119) | class MaintenanceSettings(BaseModel): class DatabaseConfig (line 125) | class DatabaseConfig(ProviderConfig): method validate_config (line 163) | def validate_config(self) -> None: method supported_providers (line 168) | def supported_providers(self) -> list[str]: method from_dict (line 172) | def from_dict(cls, data: dict[str, Any]) -> "DatabaseConfig": class DatabaseProvider (line 193) | class DatabaseProvider(Provider): method __init__ (line 198) | def __init__(self, config: DatabaseConfig): method __aenter__ (line 203) | async def __aenter__(self): method __aexit__ (line 207) | async def __aexit__(self, exc_type, exc, tb): FILE: py/core/base/providers/email.py class EmailConfig (line 9) | class EmailConfig(ProviderConfig): method supported_providers (line 25) | def supported_providers(self) -> list[str]: method validate_config (line 33) | def validate_config(self) -> None: class EmailProvider (line 56) | class EmailProvider(Provider, ABC): method __init__ (line 57) | def __init__(self, config: EmailConfig): method send_email (line 66) | async def send_email( method send_verification_email (line 78) | async def send_verification_email( method send_password_reset_email (line 84) | async def send_password_reset_email( method send_password_changed_email (line 90) | async def send_password_changed_email( FILE: py/core/base/providers/embedding.py class EmbeddingConfig (line 21) | class EmbeddingConfig(ProviderConfig): method validate_config (line 38) | def validate_config(self) -> None: method supported_providers (line 43) | def supported_providers(self) -> list[str]: class EmbeddingProvider (line 47) | class EmbeddingProvider(Provider): class Step (line 48) | class Step(Enum): method __init__ (line 52) | def __init__(self, config: EmbeddingConfig): method _execute_with_backoff_async (line 64) | async def _execute_with_backoff_async(self, task: dict[str, Any]): method _execute_with_backoff_sync (line 83) | def _execute_with_backoff_sync(self, task: dict[str, Any]): method _execute_task (line 102) | async def _execute_task(self, task: dict[str, Any]): method _execute_task_sync (line 106) | def _execute_task_sync(self, task: dict[str, Any]): method async_get_embedding (line 109) | async def async_get_embedding( method get_embedding (line 120) | def get_embedding( method async_get_embeddings (line 131) | async def async_get_embeddings( method get_embeddings (line 142) | def get_embeddings( method rerank (line 154) | def rerank( method arerank (line 164) | async def arerank( FILE: py/core/base/providers/file.py class FileConfig (line 14) | class FileConfig(ProviderConfig): method supported_providers (line 29) | def supported_providers(self) -> list[str]: method validate_config (line 38) | def validate_config(self) -> None: class FileProvider (line 50) | class FileProvider(Provider, ABC): method __init__ (line 55) | def __init__(self, config: FileConfig): method initialize (line 64) | async def initialize(self) -> None: method store_file (line 69) | async def store_file( method retrieve_file (line 80) | async def retrieve_file( method retrieve_files_as_zip (line 87) | async def retrieve_files_as_zip( method delete_file (line 97) | async def delete_file(self, document_id: UUID) -> bool: method get_files_overview (line 102) | async def get_files_overview( FILE: py/core/base/providers/ingestion.py class ChunkingStrategy (line 19) | class ChunkingStrategy(str, Enum): class IngestionConfig (line 26) | class IngestionConfig(ProviderConfig): method set_default (line 142) | def set_default(cls, **kwargs): method supported_providers (line 152) | def supported_providers(self) -> list[str]: method validate_config (line 155) | def validate_config(self) -> None: method get_default (line 162) | def get_default(cls, mode: str, app) -> "IngestionConfig": class IngestionProvider (line 174) | class IngestionProvider(Provider, ABC): method __init__ (line 179) | def __init__( FILE: py/core/base/providers/llm.py class CompletionConfig (line 22) | class CompletionConfig(ProviderConfig): method validate_config (line 31) | def validate_config(self) -> None: method supported_providers (line 38) | def supported_providers(self) -> list[str]: class CompletionProvider (line 42) | class CompletionProvider(Provider): method __init__ (line 43) | def __init__(self, config: CompletionConfig) -> None: method _execute_with_backoff_async (line 56) | async def _execute_with_backoff_async( method _execute_with_backoff_async_stream (line 91) | async def _execute_with_backoff_async_stream( method _execute_with_backoff_sync (line 114) | def _execute_with_backoff_sync( method _execute_with_backoff_sync_stream (line 142) | def _execute_with_backoff_sync_stream( method _execute_task (line 162) | async def _execute_task(self, task: dict[str, Any]): method _execute_task_sync (line 166) | def _execute_task_sync(self, task: dict[str, Any]): method aget_completion (line 169) | async def aget_completion( method aget_completion_stream (line 186) | async def aget_completion_stream( method get_completion_stream (line 220) | def get_completion_stream( FILE: py/core/base/providers/ocr.py class OCRConfig (line 16) | class OCRConfig(ProviderConfig): method validate_config (line 24) | def validate_config(self) -> None: method supported_providers (line 31) | def supported_providers(self) -> list[str]: class OCRProvider (line 35) | class OCRProvider(Provider): method __init__ (line 36) | def __init__(self, config: OCRConfig) -> None: method _execute_with_backoff_async (line 49) | async def _execute_with_backoff_async(self, task: dict[str, Any]): method _execute_with_backoff_sync (line 68) | def _execute_with_backoff_sync(self, task: dict[str, Any]): method _execute_task (line 85) | async def _execute_task(self, task: dict[str, Any]): method _execute_task_sync (line 89) | def _execute_task_sync(self, task: dict[str, Any]): method upload_file (line 93) | async def upload_file( method process_file (line 102) | async def process_file( method process_url (line 108) | async def process_url( method process_pdf (line 117) | async def process_pdf( FILE: py/core/base/providers/orchestration.py class Workflow (line 8) | class Workflow(Enum): class OrchestrationConfig (line 13) | class OrchestrationConfig(ProviderConfig): method validate_config (line 20) | def validate_config(self) -> None: method supported_providers (line 25) | def supported_providers(self) -> list[str]: class OrchestrationProvider (line 29) | class OrchestrationProvider(Provider): method __init__ (line 30) | def __init__(self, config: OrchestrationConfig): method start_worker (line 36) | async def start_worker(self): method get_worker (line 40) | def get_worker(self, name: str, max_runs: int) -> Any: method step (line 44) | def step(self, *args, **kwargs) -> Any: method workflow (line 48) | def workflow(self, *args, **kwargs) -> Any: method failure (line 52) | def failure(self, *args, **kwargs) -> Any: method register_workflows (line 56) | def register_workflows( method run_workflow (line 62) | async def run_workflow( FILE: py/core/base/providers/scheduler.py class SchedulerConfig (line 6) | class SchedulerConfig(ProviderConfig): method validate_config (line 11) | def validate_config(self): method supported_providers (line 18) | def supported_providers(self) -> list[str]: class SchedulerProvider (line 22) | class SchedulerProvider(Provider): method __init__ (line 25) | def __init__(self, config: SchedulerConfig): method add_job (line 30) | async def add_job(self, func, trigger, **kwargs): method start (line 34) | async def start(self): method shutdown (line 38) | async def shutdown(self): FILE: py/core/examples/supported_file_types/js.js function main (line 8) | async function main() { FILE: py/core/examples/supported_file_types/py.py class HTMLParser (line 14) | class HTMLParser(AsyncParser[str | bytes]): method __init__ (line 17) | def __init__( method ingest (line 27) | async def ingest( FILE: py/core/examples/supported_file_types/ts.ts function handleRequestError (line 19) | function handleRequestError(response: AxiosResponse): void { method constructor (line 49) | constructor( method _makeRequest (line 72) | protected async _makeRequest( method handleStreamingRequest (line 184) | private async handleStreamingRequest( method _ensureAuthenticated (line 237) | protected _ensureAuthenticated(): void { method setTokens (line 243) | setTokens(accessToken: string, refreshToken: string): void { FILE: py/core/main/abstractions.py class R2RProviders (line 44) | class R2RProviders(BaseModel): class Config (line 80) | class Config: class R2RServices (line 85) | class R2RServices: FILE: py/core/main/api/v3/base_router.py class BaseRouterV3 (line 17) | class BaseRouterV3: method __init__ (line 18) | def __init__( method get_router (line 38) | def get_router(self): method base_endpoint (line 41) | def base_endpoint(self, func: Callable): method build_router (line 81) | def build_router(cls, engine): method _register_workflows (line 86) | def _register_workflows(self): method _load_openapi_extras (line 89) | def _load_openapi_extras(self): method _setup_routes (line 93) | def _setup_routes(self): method set_rate_limiting (line 97) | def set_rate_limiting(self): FILE: py/core/main/api/v3/chunks_router.py class ChunksRouter (line 34) | class ChunksRouter(BaseRouterV3): method __init__ (line 35) | def __init__( method _setup_routes (line 41) | def _setup_routes(self): FILE: py/core/main/api/v3/collections_router.py class CollectionAction (line 34) | class CollectionAction(str, Enum): function authorize_collection_action (line 43) | async def authorize_collection_action( class CollectionsRouter (line 88) | class CollectionsRouter(BaseRouterV3): method __init__ (line 89) | def __init__( method _setup_routes (line 95) | def _setup_routes(self): FILE: py/core/main/api/v3/conversations_router.py class ConversationsRouter (line 27) | class ConversationsRouter(BaseRouterV3): method __init__ (line 28) | def __init__( method _setup_routes (line 34) | def _setup_routes(self): FILE: py/core/main/api/v3/documents_router.py function merge_search_settings (line 52) | def merge_search_settings( function merge_ingestion_config (line 68) | def merge_ingestion_config( class DocumentsRouter (line 80) | class DocumentsRouter(BaseRouterV3): method __init__ (line 81) | def __init__( method _prepare_search_settings (line 91) | def _prepare_search_settings( method _register_workflows (line 121) | def _register_workflows(self): method _prepare_ingestion_config (line 159) | def _prepare_ingestion_config( method _setup_routes (line 181) | def _setup_routes(self): method _process_file (line 2349) | async def _process_file(file): FILE: py/core/main/api/v3/graph_router.py class GraphRouter (line 38) | class GraphRouter(BaseRouterV3): method __init__ (line 39) | def __init__( method _register_workflows (line 49) | def _register_workflows(self): method _get_collection_id (line 78) | async def _get_collection_id( method _setup_routes (line 87) | def _setup_routes(self): FILE: py/core/main/api/v3/indices_router.py class IndicesRouter (line 24) | class IndicesRouter(BaseRouterV3): method __init__ (line 25) | def __init__( method _setup_routes (line 31) | def _setup_routes(self): FILE: py/core/main/api/v3/prompts_router.py class PromptsRouter (line 22) | class PromptsRouter(BaseRouterV3): method __init__ (line 23) | def __init__( method _setup_routes (line 29) | def _setup_routes(self): FILE: py/core/main/api/v3/retrieval_router.py function merge_search_settings (line 33) | def merge_search_settings( class RetrievalRouter (line 49) | class RetrievalRouter(BaseRouterV3): method __init__ (line 50) | def __init__( method _register_workflows (line 56) | def _register_workflows(self): method _prepare_search_settings (line 59) | def _prepare_search_settings( method _setup_routes (line 86) | def _setup_routes(self): FILE: py/core/main/api/v3/system_router.py class SystemRouter (line 21) | class SystemRouter(BaseRouterV3): method __init__ (line 22) | def __init__( method _setup_routes (line 32) | def _setup_routes(self): FILE: py/core/main/api/v3/users_router.py class UsersRouter (line 40) | class UsersRouter(BaseRouterV3): method __init__ (line 41) | def __init__( method _setup_routes (line 54) | def _setup_routes(self): FILE: py/core/main/app.py class R2RApp (line 28) | class R2RApp: method __init__ (line 29) | def __init__( method _setup_routes (line 80) | def _setup_routes(self): method _apply_middleware (line 100) | def _apply_middleware(self): method serve (line 117) | async def serve(self, host: str = "0.0.0.0", port: int = 7272): FILE: py/core/main/app_entry.py function lifespan (line 25) | async def lifespan(app: FastAPI): function create_r2r_app (line 51) | async def create_r2r_app( function r2r_exception_handler (line 116) | async def r2r_exception_handler(request: Request, exc: R2RException): FILE: py/core/main/assembly/builder.py class R2RBuilder (line 32) | class R2RBuilder: method __init__ (line 42) | def __init__(self, config: R2RConfig): method build (line 45) | async def build(self, *args, **kwargs) -> R2RApp: method _create_providers (line 142) | async def _create_providers( method _create_services (line 148) | def _create_services(self, service_params: dict[str, Any]) -> R2RServi... FILE: py/core/main/assembly/factory.py class R2RProviderFactory (line 58) | class R2RProviderFactory: method __init__ (line 59) | def __init__(self, config: R2RConfig): method create_auth_provider (line 63) | async def create_auth_provider( method create_crypto_provider (line 105) | def create_crypto_provider( method create_ocr_provider (line 122) | def create_ocr_provider( method create_ingestion_provider (line 134) | def create_ingestion_provider( method create_orchestration_provider (line 185) | def create_orchestration_provider( method create_database_provider (line 201) | async def create_database_provider( method create_file_provider (line 232) | def create_file_provider( method create_embedding_provider (line 252) | def create_embedding_provider( method create_llm_provider (line 288) | def create_llm_provider( method create_email_provider (line 314) | async def create_email_provider( method create_scheduler_provider (line 342) | async def create_scheduler_provider( method create_providers (line 353) | async def create_providers( FILE: py/core/main/assembly/utils.py function install_user_tool_dependencies (line 9) | def install_user_tool_dependencies(user_tools_path: str): FILE: py/core/main/config.py class R2RConfig (line 29) | class R2RConfig: method __init__ (line 86) | def __init__(self, config_data: dict[str, Any]): method _validate_config_section (line 139) | def _validate_config_section( method from_toml (line 152) | def from_toml(cls, config_path: Optional[str] = None) -> "R2RConfig": method to_toml (line 162) | def to_toml(self): method load_default_config (line 173) | def load_default_config(cls) -> dict: method _serialize_config (line 178) | def _serialize_config(config_section: Any): method _serialize_key (line 200) | def _serialize_key(key: Any) -> str: method load (line 204) | def load( FILE: py/core/main/middleware/project_schema.py class ProjectSchemaMiddleware (line 13) | class ProjectSchemaMiddleware(BaseHTTPMiddleware): method __init__ (line 14) | def __init__( method dispatch (line 21) | async def dispatch(self, request: Request, call_next): FILE: py/core/main/orchestration/hatchet/graph_workflow.py function hatchet_graph_search_results_factory (line 28) | def hatchet_graph_search_results_factory( FILE: py/core/main/orchestration/hatchet/ingestion_workflow.py function hatchet_ingestion_factory (line 34) | def hatchet_ingestion_factory( FILE: py/core/main/orchestration/simple/graph_workflow.py function simple_graph_search_results_factory (line 17) | def simple_graph_search_results_factory(service: GraphService): FILE: py/core/main/orchestration/simple/ingestion_workflow.py function simple_ingestion_factory (line 25) | def simple_ingestion_factory(service: IngestionService): FILE: py/core/main/services/auth_service.py class AuthService (line 17) | class AuthService(Service): method __init__ (line 18) | def __init__( method register (line 28) | async def register( method send_verification_email (line 46) | async def send_verification_email( method verify_email (line 51) | async def verify_email( method login (line 78) | async def login(self, email: str, password: str) -> dict[str, Token]: method user (line 81) | async def user(self, token: str) -> User: method refresh_access_token (line 96) | async def refresh_access_token( method change_password (line 101) | async def change_password( method request_password_reset (line 110) | async def request_password_reset(self, email: str) -> dict[str, str]: method confirm_password_reset (line 113) | async def confirm_password_reset( method logout (line 120) | async def logout(self, token: str) -> dict[str, str]: method update_user (line 123) | async def update_user( method delete_user (line 156) | async def delete_user( method clean_expired_blacklisted_tokens (line 214) | async def clean_expired_blacklisted_tokens( method get_user_verification_code (line 223) | async def get_user_verification_code( method get_user_reset_token (line 244) | async def get_user_reset_token( method send_reset_email (line 265) | async def send_reset_email(self, email: str) -> dict: method create_user_api_key (line 277) | async def create_user_api_key( method delete_user_api_key (line 295) | async def delete_user_api_key(self, user_id: UUID, key_id: UUID) -> bool: method list_user_api_keys (line 309) | async def list_user_api_keys(self, user_id: UUID) -> list[dict]: FILE: py/core/main/services/base.py class Service (line 7) | class Service(ABC): method __init__ (line 8) | def __init__( FILE: py/core/main/services/graph_service.py function _collect_async_results (line 39) | async def _collect_async_results(result_gen: AsyncGenerator) -> list[Any]: class GraphService (line 47) | class GraphService(Service): method __init__ (line 48) | def __init__( method create_entity (line 58) | async def create_entity( method update_entity (line 80) | async def update_entity( method delete_entity (line 104) | async def delete_entity( method get_entities (line 115) | async def get_entities( method create_relationship (line 133) | async def create_relationship( method delete_relationship (line 167) | async def delete_relationship( method update_relationship (line 180) | async def update_relationship( method get_relationships (line 214) | async def get_relationships( method create_community (line 231) | async def create_community( method update_community (line 254) | async def update_community( method delete_community (line 280) | async def delete_community( method get_communities (line 290) | async def get_communities( method list_graphs (line 307) | async def list_graphs( method update_graph (line 321) | async def update_graph( method reset_graph (line 333) | async def reset_graph(self, id: UUID) -> bool: method get_document_ids_for_create_graph (line 344) | async def get_document_ids_for_create_graph( method graph_search_results_entity_description (line 360) | async def graph_search_results_entity_description( method _describe_entities_in_document_batch (line 425) | async def _describe_entities_in_document_batch( method _process_entity_for_description (line 488) | async def _process_entity_for_description( method graph_search_results_clustering (line 589) | async def graph_search_results_clustering( method _perform_graph_clustering (line 610) | async def _perform_graph_clustering( method graph_search_results_community_summary (line 624) | async def graph_search_results_community_summary( method _summarize_communities (line 653) | async def _summarize_communities( method _process_community_summary (line 745) | async def _process_community_summary( method _community_summary_prompt (line 892) | async def _community_summary_prompt( method delete (line 947) | async def delete( method graph_search_results_extraction (line 956) | async def graph_search_results_extraction( method _extract_graph_search_results_from_chunk_group (line 1069) | async def _extract_graph_search_results_from_chunk_group( method _parse_graph_search_results_extraction_xml (line 1149) | async def _parse_graph_search_results_extraction_xml( method store_graph_search_results_extractions (line 1249) | async def store_graph_search_results_extractions( method deduplicate_document_entities (line 1303) | async def deduplicate_document_entities( FILE: py/core/main/services/ingestion_service.py class IngestionService (line 42) | class IngestionService: method __init__ (line 46) | def __init__( method ingest_file_ingress (line 54) | async def ingest_file_ingress( method create_document_info_from_file (line 140) | def create_document_info_from_file( method _create_document_info_from_chunks (line 184) | def _create_document_info_from_chunks( method parse_file (line 216) | async def parse_file( method augment_document_info (line 293) | async def augment_document_info( method embed_document (line 338) | async def embed_document( method store_embeddings (line 425) | async def store_embeddings( method finalize_ingestion (line 526) | async def finalize_ingestion( method update_document_status (line 540) | async def update_document_status( method _update_document_status_in_db (line 551) | async def _update_document_status_in_db( method ingest_chunks_ingress (line 578) | async def ingest_chunks_ingress( method update_chunk_ingress (line 628) | async def update_chunk_ingress( method _get_enriched_chunk_text (line 705) | async def _get_enriched_chunk_text( method chunk_enrichment (line 794) | async def chunk_enrichment( method list_chunks (line 852) | async def list_chunks( method get_chunk (line 868) | async def get_chunk( class IngestionServiceAdapter (line 877) | class IngestionServiceAdapter: method _parse_user_data (line 879) | def _parse_user_data(user_data) -> User: method parse_ingest_file_input (line 890) | def parse_ingest_file_input(data: dict) -> dict: method parse_ingest_chunks_input (line 905) | def parse_ingest_chunks_input(data: dict) -> dict: method parse_update_chunk_input (line 918) | def parse_update_chunk_input(data: dict) -> dict: method parse_create_vector_index_input (line 929) | def parse_create_vector_index_input(data: dict) -> dict: method parse_list_vector_indices_input (line 941) | def parse_list_vector_indices_input(input_data: dict) -> dict: method parse_delete_vector_index_input (line 945) | def parse_delete_vector_index_input(input_data: dict) -> dict: method parse_select_vector_index_input (line 953) | def parse_select_vector_index_input(input_data: dict) -> dict: FILE: py/core/main/services/maintenance_service.py class MaintenanceService (line 12) | class MaintenanceService(Service): method __init__ (line 13) | def __init__( method initialize (line 24) | async def initialize(self): method _parse_cron_schedule (line 49) | def _parse_cron_schedule(self, cron_schedule: str) -> dict: method vacuum_database (line 81) | async def vacuum_database(self, full: bool = False, analyze: bool = Tr... method vacuum_table (line 99) | async def vacuum_table( FILE: py/core/main/services/management_service.py class ManagementService (line 31) | class ManagementService(Service): method __init__ (line 32) | def __init__( method app_settings (line 42) | async def app_settings(self): method users_overview (line 58) | async def users_overview( method delete_documents_and_chunks_by_filter (line 70) | async def delete_documents_and_chunks_by_filter( method download_file (line 232) | async def download_file( method export_files (line 239) | async def export_files( method export_collections (line 251) | async def export_collections( method export_documents (line 263) | async def export_documents( method export_document_entities (line 275) | async def export_document_entities( method export_document_relationships (line 290) | async def export_document_relationships( method export_conversations (line 305) | async def export_conversations( method export_graph_entities (line 317) | async def export_graph_entities( method export_graph_relationships (line 332) | async def export_graph_relationships( method export_graph_communities (line 347) | async def export_graph_communities( method export_messages (line 362) | async def export_messages( method export_users (line 374) | async def export_users( method documents_overview (line 386) | async def documents_overview( method update_document_metadata (line 404) | async def update_document_metadata( method list_document_chunks (line 416) | async def list_document_chunks( method assign_document_to_collection (line 432) | async def assign_document_to_collection( method remove_document_from_collection (line 454) | async def remove_document_from_collection( method _process_relationships (line 468) | def _process_relationships( method generate_output (line 482) | def generate_output( method _count_connected_components (line 528) | def _count_connected_components(self, graph: dict[str, list[str]]) -> ... method _get_central_nodes (line 545) | def _get_central_nodes( method create_collection (line 555) | async def create_collection( method update_collection (line 573) | async def update_collection( method delete_collection (line 590) | async def delete_collection(self, collection_id: UUID) -> bool: method collections_overview (line 607) | async def collections_overview( method add_user_to_collection (line 625) | async def add_user_to_collection( method remove_user_from_collection (line 634) | async def remove_user_from_collection( method get_users_in_collection (line 641) | async def get_users_in_collection( method documents_in_collection (line 648) | async def documents_in_collection( method summarize_collection (line 655) | async def summarize_collection( method add_prompt (line 694) | async def add_prompt( method get_cached_prompt (line 705) | async def get_cached_prompt( method get_prompt (line 724) | async def get_prompt( method get_all_prompts (line 739) | async def get_all_prompts(self) -> dict[str, Prompt]: method update_prompt (line 742) | async def update_prompt( method delete_prompt (line 756) | async def delete_prompt(self, name: str) -> dict: method get_conversation (line 763) | async def get_conversation( method create_conversation (line 773) | async def create_conversation( method conversations_overview (line 783) | async def conversations_overview( method add_message (line 797) | async def add_message( method edit_message (line 811) | async def edit_message( method update_conversation (line 825) | async def update_conversation( method delete_conversation (line 832) | async def delete_conversation( method get_user_max_documents (line 844) | async def get_user_max_documents(self, user_id: UUID) -> int | None: method get_user_max_chunks (line 853) | async def get_user_max_chunks(self, user_id: UUID) -> int | None: method get_user_max_collections (line 861) | async def get_user_max_collections(self, user_id: UUID) -> int | None: method get_max_upload_size_by_type (line 872) | async def get_max_upload_size_by_type( method get_all_user_limits (line 920) | async def get_all_user_limits(self, user_id: UUID) -> dict[str, Any]: FILE: py/core/main/services/retrieval_service.py class AgentFactory (line 60) | class AgentFactory: method create_agent (line 67) | def create_agent( class RetrievalService (line 248) | class RetrievalService(Service): method __init__ (line 249) | def __init__( method search (line 259) | async def search( method _basic_search (line 281) | async def _basic_search( method _rag_fusion_search (line 326) | async def _rag_fusion_search( method _generate_similar_queries (line 405) | async def _generate_similar_queries( method _reciprocal_rank_fusion_chunks (line 450) | def _reciprocal_rank_fusion_chunks( method _reciprocal_rank_fusion_graphs (line 509) | def _reciprocal_rank_fusion_graphs( method _hyde_search (line 554) | async def _hyde_search( method _fanout_chunk_and_graph_search (line 616) | async def _fanout_chunk_and_graph_search( method _vector_search_logic (line 651) | async def _vector_search_logic( method _graph_search_logic (line 731) | async def _graph_search_logic( method _run_hyde_generation (line 899) | async def _run_hyde_generation( method search_documents (line 942) | async def search_documents( method completion (line 963) | async def completion( method embedding (line 977) | async def embedding( method rag (line 985) | async def rag( method _find_item_by_shortid (line 1248) | def _find_item_by_shortid( method agent (line 1268) | async def agent( method get_context (line 1718) | async def get_context( method _parse_user_and_collection_filters (line 1774) | def _parse_user_and_collection_filters( method _build_documents_context (line 1821) | async def _build_documents_context( method _build_aware_system_instruction (line 1872) | async def _build_aware_system_instruction( method _perform_web_search (line 1937) | async def _perform_web_search( class RetrievalServiceAdapter (line 1989) | class RetrievalServiceAdapter: method _parse_user_data (line 1991) | def _parse_user_data(user_data): method prepare_search_input (line 2002) | def prepare_search_input( method parse_search_input (line 2014) | def parse_search_input(data: dict): method prepare_rag_input (line 2024) | def prepare_rag_input( method parse_rag_input (line 2042) | def parse_rag_input(data: dict): method prepare_agent_input (line 2057) | def prepare_agent_input( method parse_agent_input (line 2077) | def parse_agent_input(data: dict): FILE: py/core/parsers/media/audio_parser.py class AudioParser (line 19) | class AudioParser(AsyncParser[bytes]): method __init__ (line 22) | def __init__( method ingest (line 33) | async def ingest( # type: ignore FILE: py/core/parsers/media/bmp_parser.py class BMPParser (line 12) | class BMPParser(AsyncParser[str | bytes]): method __init__ (line 15) | def __init__( method extract_bmp_metadata (line 29) | async def extract_bmp_metadata(self, data: bytes) -> dict: method ingest (line 65) | async def ingest( FILE: py/core/parsers/media/doc_parser.py class DOCParser (line 16) | class DOCParser(AsyncParser[str | bytes]): method __init__ (line 19) | def __init__( method ingest (line 30) | async def ingest( method _extract_text (line 76) | def _extract_text(self, word_stream: bytes, table_stream: bytes) -> str: method _clean_text (line 94) | def _clean_text(self, text: str) -> list[str]: FILE: py/core/parsers/media/docx_parser.py class DOCXParser (line 15) | class DOCXParser(AsyncParser[str | bytes]): method __init__ (line 18) | def __init__( method ingest (line 29) | async def ingest( FILE: py/core/parsers/media/img_parser.py class ImageParser (line 22) | class ImageParser(AsyncParser[str | bytes]): method __init__ (line 36) | def __init__( method _is_heic (line 50) | def _is_heic(self, data: bytes) -> bool: method _convert_heic_to_jpeg (line 71) | async def _convert_heic_to_jpeg(self, data: bytes) -> bytes: method _convert_tiff_to_jpeg (line 99) | async def _convert_tiff_to_jpeg(self, data: bytes) -> bytes: method _is_jpeg (line 117) | def _is_jpeg(self, data: bytes) -> bool: method _is_png (line 121) | def _is_png(self, data: bytes) -> bool: method _is_bmp (line 126) | def _is_bmp(self, data: bytes) -> bool: method _is_tiff (line 130) | def _is_tiff(self, data: bytes) -> bool: method _get_image_media_type (line 137) | def _get_image_media_type( method ingest (line 186) | async def ingest( FILE: py/core/parsers/media/odt_parser.py class ODTParser (line 14) | class ODTParser(AsyncParser[str | bytes]): method __init__ (line 15) | def __init__( method ingest (line 27) | async def ingest( FILE: py/core/parsers/media/pdf_parser.py class OCRPDFParser (line 28) | class OCRPDFParser(AsyncParser[str | bytes]): method __init__ (line 35) | def __init__( method ingest (line 46) | async def ingest( class VLMPDFParser (line 73) | class VLMPDFParser(AsyncParser[str | bytes]): method __init__ (line 76) | def __init__( method process_page (line 96) | async def process_page(self, image, page_num: int) -> dict[str, str]: method process_and_yield (line 228) | async def process_and_yield(self, image, page_num: int): method ingest (line 237) | async def ingest( class BasicPDFParser (line 360) | class BasicPDFParser(AsyncParser[str | bytes]): method __init__ (line 363) | def __init__( method ingest (line 374) | async def ingest( class PDFParserUnstructured (line 415) | class PDFParserUnstructured(AsyncParser[str | bytes]): method __init__ (line 416) | def __init__( method ingest (line 434) | async def ingest( FILE: py/core/parsers/media/ppt_parser.py class PPTParser (line 16) | class PPTParser(AsyncParser[str | bytes]): method __init__ (line 19) | def __init__( method _extract_text_from_record (line 30) | def _extract_text_from_record(self, data: bytes) -> str: method ingest (line 40) | async def ingest( FILE: py/core/parsers/media/pptx_parser.py class PPTXParser (line 15) | class PPTXParser(AsyncParser[str | bytes]): method __init__ (line 18) | def __init__( method ingest (line 29) | async def ingest( FILE: py/core/parsers/media/rtf_parser.py class RTFParser (line 14) | class RTFParser(AsyncParser[str | bytes]): method __init__ (line 17) | def __init__( method ingest (line 28) | async def ingest( FILE: py/core/parsers/structured/csv_parser.py class CSVParser (line 12) | class CSVParser(AsyncParser[str | bytes]): method __init__ (line 15) | def __init__( method ingest (line 31) | async def ingest( class CSVParserAdvanced (line 42) | class CSVParserAdvanced(AsyncParser[str | bytes]): method __init__ (line 45) | def __init__( method get_delimiter (line 57) | def get_delimiter( method ingest (line 73) | async def ingest( FILE: py/core/parsers/structured/eml_parser.py class EMLParser (line 13) | class EMLParser(AsyncParser[str | bytes]): method __init__ (line 16) | def __init__( method ingest (line 26) | async def ingest( FILE: py/core/parsers/structured/epub_parser.py class EPUBParser (line 17) | class EPUBParser(AsyncParser[str | bytes]): method __init__ (line 20) | def __init__( method _safe_get_metadata (line 31) | def _safe_get_metadata(self, book, field: str) -> str | None: method _clean_text (line 39) | def _clean_text(self, content: bytes) -> str: method ingest (line 56) | async def ingest( FILE: py/core/parsers/structured/json_parser.py class JSONParser (line 15) | class JSONParser(AsyncParser[str | bytes]): method __init__ (line 18) | def __init__( method ingest (line 28) | async def ingest( method _parse_json (line 62) | def _parse_json(self, data: dict) -> str: FILE: py/core/parsers/structured/msg_parser.py class MSGParser (line 16) | class MSGParser(AsyncParser[str | bytes]): method __init__ (line 19) | def __init__( method ingest (line 29) | async def ingest( FILE: py/core/parsers/structured/org_parser.py class ORGParser (line 14) | class ORGParser(AsyncParser[str | bytes]): method __init__ (line 17) | def __init__( method _process_node (line 28) | def _process_node(self, node) -> list[str]: method ingest (line 42) | async def ingest( FILE: py/core/parsers/structured/p7s_parser.py class P7SParser (line 23) | class P7SParser(AsyncParser[str | bytes]): method __init__ (line 26) | def __init__( method _format_datetime (line 39) | def _format_datetime(self, dt: datetime) -> str: method _get_name_attribute (line 43) | def _get_name_attribute(self, name, oid): method _extract_cert_info (line 50) | def _extract_cert_info(self, cert) -> dict: method _try_parse_signature (line 86) | def _try_parse_signature(self, data: bytes): method _extract_p7s_data_from_mime (line 111) | def _extract_p7s_data_from_mime(self, raw_data: bytes) -> bytes: method ingest (line 144) | async def ingest( FILE: py/core/parsers/structured/rst_parser.py class RSTParser (line 15) | class RSTParser(AsyncParser[str | bytes]): method __init__ (line 18) | def __init__( method ingest (line 30) | async def ingest( FILE: py/core/parsers/structured/tsv_parser.py class TSVParser (line 12) | class TSVParser(AsyncParser[str | bytes]): method __init__ (line 15) | def __init__( method ingest (line 31) | async def ingest( class TSVParserAdvanced (line 42) | class TSVParserAdvanced(AsyncParser[str | bytes]): method __init__ (line 45) | def __init__( method validate_tsv (line 57) | def validate_tsv(self, file: IO[bytes]) -> bool: method ingest (line 70) | async def ingest( FILE: py/core/parsers/structured/xls_parser.py class XLSParser (line 16) | class XLSParser(AsyncParser[str | bytes]): method __init__ (line 19) | def __init__( method ingest (line 30) | async def ingest( class XLSParserAdvanced (line 66) | class XLSParserAdvanced(AsyncParser[str | bytes]): method __init__ (line 69) | def __init__( method connected_components (line 78) | def connected_components(self, arr): method get_cell_value (line 89) | def get_cell_value(self, cell, workbook): method ingest (line 105) | async def ingest( FILE: py/core/parsers/structured/xlsx_parser.py class XLSXParser (line 17) | class XLSXParser(AsyncParser[str | bytes]): method __init__ (line 20) | def __init__( method ingest (line 31) | async def ingest( class XLSXParserAdvanced (line 44) | class XLSXParserAdvanced(AsyncParser[str | bytes]): method __init__ (line 48) | def __init__( method connected_components (line 57) | def connected_components(self, arr): method ingest (line 72) | async def ingest( FILE: py/core/parsers/text/css_parser.py class CSSParser (line 13) | class CSSParser(AsyncParser[str | bytes]): method __init__ (line 16) | def __init__( method ingest (line 26) | async def ingest( method _process_css_content (line 46) | def _process_css_content(self, css: str) -> str: method _extract_comments (line 74) | def _extract_comments(self, css: str) -> list[str]: method _extract_rules (line 80) | def _extract_rules(self, css: str) -> list[str]: FILE: py/core/parsers/text/html_parser.py class HTMLParser (line 14) | class HTMLParser(AsyncParser[str | bytes]): method __init__ (line 17) | def __init__( method ingest (line 27) | async def ingest( FILE: py/core/parsers/text/js_parser.py class JSParser (line 13) | class JSParser(AsyncParser[str | bytes]): method __init__ (line 16) | def __init__( method ingest (line 26) | async def ingest( method _process_js_content (line 46) | def _process_js_content(self, js: str) -> str: method _extract_comments (line 101) | def _extract_comments(self, js: str) -> list[str]: method _extract_imports_exports (line 126) | def _extract_imports_exports(self, js: str) -> list[str]: method _extract_functions (line 147) | def _extract_functions(self, js: str) -> list[str]: method _extract_classes (line 183) | def _extract_classes(self, js: str) -> list[str]: method _extract_variables (line 206) | def _extract_variables(self, js: str) -> list[str]: method _remove_comments (line 224) | def _remove_comments(self, js: str) -> str: FILE: py/core/parsers/text/md_parser.py class MDParser (line 14) | class MDParser(AsyncParser[str | bytes]): method __init__ (line 17) | def __init__( method ingest (line 31) | async def ingest( FILE: py/core/parsers/text/python_parser.py class PythonParser (line 13) | class PythonParser(AsyncParser[str | bytes]): method __init__ (line 16) | def __init__( method ingest (line 26) | async def ingest( method _process_python_code (line 46) | def _process_python_code(self, code: str) -> str: method _extract_module_docstring (line 81) | def _extract_module_docstring(self, code: str) -> str: method _extract_imports (line 96) | def _extract_imports(self, lines: list[str]) -> list[str]: method _extract_definitions (line 107) | def _extract_definitions(self, code: str) -> list[str]: FILE: py/core/parsers/text/text_parser.py class TextParser (line 12) | class TextParser(AsyncParser[str | bytes]): method __init__ (line 15) | def __init__( method ingest (line 25) | async def ingest( FILE: py/core/parsers/text/ts_parser.py class TSParser (line 13) | class TSParser(AsyncParser[str | bytes]): method __init__ (line 16) | def __init__( method ingest (line 26) | async def ingest( method _process_ts_code (line 46) | def _process_ts_code(self, code: str) -> str: method _extract_file_comment (line 81) | def _extract_file_comment(self, code: str) -> str: method _extract_imports_exports (line 97) | def _extract_imports_exports(self, lines: list[str]) -> list[str]: method _extract_definitions (line 109) | def _extract_definitions(self, code: str) -> list[str]: FILE: py/core/providers/auth/clerk.py class ClerkAuthProvider (line 19) | class ClerkAuthProvider(JwtAuthProvider): method __init__ (line 25) | def __init__( method decode_token (line 52) | async def decode_token(self, token: str) -> TokenData: FILE: py/core/providers/auth/jwt.py class JwtAuthProvider (line 26) | class JwtAuthProvider(AuthProvider): method __init__ (line 27) | def __init__( method login (line 38) | async def login(self, email: str, password: str) -> dict[str, Token]: method oauth_callback (line 41) | async def oauth_callback(self, code: str) -> dict[str, Token]: method user (line 44) | async def user(self, token: str) -> User: method change_password (line 47) | async def change_password( method confirm_password_reset (line 52) | async def confirm_password_reset( method create_access_token (line 57) | def create_access_token(self, data: dict) -> str: method create_refresh_token (line 60) | def create_refresh_token(self, data: dict) -> str: method decode_token (line 63) | async def decode_token(self, token: str) -> TokenData: method refresh_access_token (line 107) | async def refresh_access_token( method get_current_active_user (line 112) | def get_current_active_user( method logout (line 120) | async def logout(self, token: str) -> dict[str, str]: method register (line 123) | async def register( method request_password_reset (line 134) | async def request_password_reset(self, email: str) -> dict[str, str]: method send_reset_email (line 137) | async def send_reset_email(self, email: str) -> dict[str, str]: method create_user_api_key (line 140) | async def create_user_api_key( method verify_email (line 148) | async def verify_email( method send_verification_email (line 153) | async def send_verification_email( method list_user_api_keys (line 158) | async def list_user_api_keys(self, user_id: UUID) -> list[dict]: method delete_user_api_key (line 161) | async def delete_user_api_key(self, user_id: UUID, key_id: UUID) -> bool: method oauth_callback_handler (line 164) | async def oauth_callback_handler( FILE: py/core/providers/auth/r2r_auth.py function normalize_email (line 31) | def normalize_email(email: str) -> str: class R2RAuthProvider (line 44) | class R2RAuthProvider(AuthProvider): method __init__ (line 45) | def __init__( method initialize (line 72) | async def initialize(self): method create_access_token (line 85) | def create_access_token(self, data: dict) -> str: method create_refresh_token (line 96) | def create_refresh_token(self, data: dict) -> str: method decode_token (line 106) | async def decode_token(self, token: str) -> TokenData: method authenticate_api_key (line 147) | async def authenticate_api_key(self, api_key: str) -> User: method user (line 182) | async def user(self, token: str = Depends(oauth2_scheme)) -> User: method get_current_active_user (line 208) | def get_current_active_user( method register (line 215) | async def register( method send_verification_email (line 283) | async def send_verification_email( method verify_email (line 319) | async def verify_email( method login (line 333) | async def login(self, email: str, password: str) -> dict[str, Token]: method refresh_access_token (line 392) | async def refresh_access_token( method change_password (line 419) | async def change_password( method request_password_reset (line 464) | async def request_password_reset(self, email: str) -> dict[str, str]: method confirm_password_reset (line 501) | async def confirm_password_reset( method logout (line 545) | async def logout(self, token: str) -> dict[str, str]: method clean_expired_blacklisted_tokens (line 549) | async def clean_expired_blacklisted_tokens(self): method send_reset_email (line 552) | async def send_reset_email(self, email: str) -> dict: method create_user_api_key (line 563) | async def create_user_api_key( method list_user_api_keys (line 589) | async def list_user_api_keys(self, user_id: UUID) -> list[dict]: method delete_user_api_key (line 594) | async def delete_user_api_key(self, user_id: UUID, key_id: UUID) -> bool: method rename_api_key (line 600) | async def rename_api_key( method oauth_callback_handler (line 609) | async def oauth_callback_handler( FILE: py/core/providers/auth/supabase.py class SupabaseAuthProvider (line 30) | class SupabaseAuthProvider(AuthProvider): method __init__ (line 31) | def __init__( method initialize (line 56) | async def initialize(self): method create_access_token (line 60) | def create_access_token(self, data: dict) -> str: method create_refresh_token (line 65) | def create_refresh_token(self, data: dict) -> str: method decode_token (line 70) | async def decode_token(self, token: str) -> TokenData: method register (line 108) | async def register( method send_verification_email (line 129) | async def send_verification_email( method verify_email (line 136) | async def verify_email( method login (line 147) | async def login(self, email: str, password: str) -> dict[str, Token]: method refresh_access_token (line 175) | async def refresh_access_token( method user (line 202) | async def user(self, token: str = Depends(oauth2_scheme)) -> User: method get_current_active_user (line 225) | def get_current_active_user( method change_password (line 233) | async def change_password( method request_password_reset (line 251) | async def request_password_reset(self, email: str) -> dict[str, str]: method confirm_password_reset (line 287) | async def confirm_password_reset( method logout (line 294) | async def logout(self, token: str) -> dict[str, str]: method clean_expired_blacklisted_tokens (line 303) | async def clean_expired_blacklisted_tokens(self): method send_reset_email (line 307) | async def send_reset_email(self, email: str) -> dict[str, str]: method create_user_api_key (line 310) | async def create_user_api_key( method list_user_api_keys (line 320) | async def list_user_api_keys(self, user_id: UUID) -> list[dict]: method delete_user_api_key (line 325) | async def delete_user_api_key(self, user_id: UUID, key_id: UUID) -> bool: method oauth_callback_handler (line 330) | async def oauth_callback_handler( FILE: py/core/providers/crypto/bcrypt.py class BcryptCryptoConfig (line 20) | class BcryptCryptoConfig(CryptoConfig): method supported_providers (line 28) | def supported_providers(self) -> list[str]: method validate_config (line 31) | def validate_config(self) -> None: method verify_password (line 38) | def verify_password( class BCryptCryptoProvider (line 51) | class BCryptCryptoProvider(CryptoProvider, ABC): method __init__ (line 52) | def __init__(self, config: BcryptCryptoConfig): method get_password_hash (line 73) | def get_password_hash(self, password: str) -> str: method verify_password (line 81) | def verify_password( method generate_verification_code (line 111) | def generate_verification_code(self, length: int = 32) -> str: method generate_signing_keypair (line 115) | def generate_signing_keypair(self) -> Tuple[str, str, str]: method sign_request (line 127) | def sign_request(self, private_key: str, data: str) -> str: method verify_request_signature (line 138) | def verify_request_signature( method generate_api_key (line 150) | def generate_api_key(self) -> Tuple[str, str]: method hash_api_key (line 161) | def hash_api_key(self, raw_api_key: str) -> str: method verify_api_key (line 169) | def verify_api_key(self, raw_api_key: str, hashed_key: str) -> bool: method generate_secure_token (line 173) | def generate_secure_token(self, data: dict, expiry: datetime) -> str: method verify_secure_token (line 185) | def verify_secure_token(self, token: str) -> Optional[dict]: FILE: py/core/providers/crypto/nacl.py function encode_bytes_readable (line 21) | def encode_bytes_readable(random_bytes: bytes, chars: str) -> str: class NaClCryptoConfig (line 34) | class NaClCryptoConfig(CryptoConfig): class NaClCryptoProvider (line 46) | class NaClCryptoProvider(CryptoProvider): method __init__ (line 47) | def __init__(self, config: NaClCryptoConfig): method get_password_hash (line 64) | def get_password_hash(self, password: str) -> str: method verify_password (line 73) | def verify_password( method generate_verification_code (line 83) | def generate_verification_code(self, length: int = 32) -> str: method generate_api_key (line 87) | def generate_api_key(self) -> Tuple[str, str]: method hash_api_key (line 103) | def hash_api_key(self, raw_api_key: str) -> str: method verify_api_key (line 111) | def verify_api_key(self, raw_api_key: str, hashed_key: str) -> bool: method sign_request (line 119) | def sign_request(self, private_key: str, data: str) -> str: method verify_request_signature (line 130) | def verify_request_signature( method generate_secure_token (line 142) | def generate_secure_token(self, data: dict, expiry: datetime) -> str: method verify_secure_token (line 159) | def verify_secure_token(self, token: str) -> Optional[dict]: method generate_signing_keypair (line 172) | def generate_signing_keypair(self) -> Tuple[str, str, str]: FILE: py/core/providers/database/base.py class SemaphoreConnectionPool (line 14) | class SemaphoreConnectionPool: method __init__ (line 15) | def __init__(self, connection_string, postgres_configuration_settings): method initialize (line 19) | async def initialize(self): method get_connection (line 44) | async def get_connection(self): method close (line 49) | async def close(self): class QueryBuilder (line 53) | class QueryBuilder: method __init__ (line 54) | def __init__(self, table_name: str): method select (line 68) | def select(self, fields: list[str]): method insert (line 72) | def insert(self, data: dict): method update (line 77) | def update(self, data: dict): method delete (line 82) | def delete(self): method where (line 86) | def where(self, condition: str): method limit (line 90) | def limit(self, value: Optional[int]): method offset (line 94) | def offset(self, value: int): method order_by (line 98) | def order_by(self, fields: str): method returning (line 102) | def returning(self, fields: list[str]): method build (line 106) | def build(self): class PostgresConnectionManager (line 151) | class PostgresConnectionManager(DatabaseConnectionManager): method __init__ (line 152) | def __init__(self): method initialize (line 155) | async def initialize(self, pool: SemaphoreConnectionPool): method execute_query (line 158) | async def execute_query(self, query, params=None, isolation_level=None): method execute_many (line 174) | async def execute_many(self, query, params=None, batch_size=1000): method fetch_query (line 189) | async def fetch_query(self, query, params=None): method fetchrow_query (line 218) | async def fetchrow_query(self, query, params=None): method transaction (line 229) | async def transaction(self, isolation_level=None): FILE: py/core/providers/database/chunks.py function index_measure_to_ops (line 34) | def index_measure_to_ops( function quantize_vector_to_binary (line 41) | def quantize_vector_to_binary( class HybridSearchIntermediateResult (line 68) | class HybridSearchIntermediateResult(TypedDict): class PostgresChunksHandler (line 75) | class PostgresChunksHandler(Handler): method __init__ (line 78) | def __init__( method create_tables (line 89) | async def create_tables(self): method upsert (line 185) | async def upsert(self, entry: VectorEntry) -> None: method upsert_entries (line 255) | async def upsert_entries(self, entries: list[VectorEntry]) -> None: method semantic_search (line 327) | async def semantic_search( method full_text_search (line 484) | async def full_text_search( method hybrid_search (line 538) | async def hybrid_search( method delete (line 642) | async def delete( method assign_document_chunks_to_collection (line 668) | async def assign_document_chunks_to_collection( method remove_document_from_collection_vector (line 680) | async def remove_document_from_collection_vector( method delete_user_vector (line 692) | async def delete_user_vector(self, owner_id: UUID) -> None: method delete_collection_vector (line 699) | async def delete_collection_vector(self, collection_id: UUID) -> None: method list_document_chunks (line 708) | async def list_document_chunks( method get_chunk (line 752) | async def get_chunk(self, id: UUID) -> dict: method create_index (line 774) | async def create_index( method list_indices (line 914) | async def list_indices( method delete_index (line 999) | async def delete_index( method list_chunks (line 1081) | async def list_chunks( method search_documents (line 1149) | async def search_documents( method _get_index_options (line 1290) | def _get_index_options( FILE: py/core/providers/database/collections.py class PostgresCollectionsHandler (line 30) | class PostgresCollectionsHandler(Handler): method __init__ (line 33) | def __init__( method create_tables (line 42) | async def create_tables(self) -> None: method collection_exists (line 115) | async def collection_exists(self, collection_id: UUID) -> bool: method create_collection (line 126) | async def create_collection( method update_collection (line 183) | async def update_collection( method delete_collection_relational (line 256) | async def delete_collection_relational(self, collection_id: UUID) -> N... method documents_in_collection (line 294) | async def documents_in_collection( method get_collections_overview (line 351) | async def get_collections_overview( method assign_document_to_collection_relational (line 431) | async def assign_document_to_collection_relational( method remove_document_from_collection_relational (line 504) | async def remove_document_from_collection_relational( method decrement_collection_document_count (line 539) | async def decrement_collection_document_count( method export_to_csv (line 557) | async def export_to_csv( method get_collection_by_name (line 677) | async def get_collection_by_name( FILE: py/core/providers/database/conversations.py function _validate_image_size (line 22) | def _validate_image_size( function _json_default (line 53) | def _json_default(obj: Any) -> str: function safe_dumps (line 69) | def safe_dumps(obj: Any) -> str: class PostgresConversationsHandler (line 74) | class PostgresConversationsHandler(Handler): method __init__ (line 75) | def __init__( method create_tables (line 81) | async def create_tables(self): method create_conversation (line 106) | async def create_conversation( method get_conversations_overview (line 133) | async def get_conversations_overview( method add_message (line 207) | async def add_message( method edit_message (line 296) | async def edit_message( method update_message_metadata (line 379) | async def update_message_metadata( method get_conversation (line 405) | async def get_conversation( method update_conversation (line 489) | async def update_conversation( method delete_conversation (line 524) | async def delete_conversation( method export_conversations_to_csv (line 569) | async def export_conversations_to_csv( method export_messages_to_csv (line 671) | async def export_messages_to_csv( FILE: py/core/providers/database/documents.py function transform_filter_fields (line 31) | def transform_filter_fields(filters: dict[str, Any]) -> dict[str, Any]: class PostgresDocumentsHandler (line 70) | class PostgresDocumentsHandler(Handler): method __init__ (line 73) | def __init__( method create_tables (line 82) | async def create_tables(self): method upsert_documents_overview (line 198) | async def upsert_documents_overview( method delete (line 331) | async def delete( method _get_status_from_table (line 347) | async def _get_status_from_table( method _get_ids_from_table (line 373) | async def _get_ids_from_table( method _set_status_in_table (line 396) | async def _set_status_in_table( method _get_status_model (line 420) | def _get_status_model(self, status_type: str): method get_workflow_status (line 440) | async def get_workflow_status( method set_workflow_status (line 465) | async def set_workflow_status( method get_document_ids_by_status (line 486) | async def get_document_ids_by_status( method get_documents_overview (line 508) | async def get_documents_overview( method update_document_metadata (line 715) | async def update_document_metadata( method semantic_document_search (line 753) | async def semantic_document_search( method full_text_document_search (line 844) | async def full_text_document_search( method hybrid_document_search (line 933) | async def hybrid_document_search( method search_documents (line 1025) | async def search_documents( method export_to_csv (line 1057) | async def export_to_csv( FILE: py/core/providers/database/filters.py class FilterOperator (line 6) | class FilterOperator: class FilterError (line 60) | class FilterError(ValueError): class ParamHelper (line 69) | class ParamHelper: method __init__ (line 72) | def __init__(self, initial_params: Optional[list[Any]] = None): method add (line 76) | def add(self, value: Any) -> str: function _process_filter_dict (line 87) | def _process_filter_dict( function _process_field_condition (line 183) | def _process_field_condition( function _build_array_literal (line 340) | def _build_array_literal( function _build_standard_column_condition (line 350) | def _build_standard_column_condition( function _build_collection_ids_condition (line 432) | def _build_collection_ids_condition( function _build_metadata_condition (line 529) | def _build_metadata_condition( function _build_metadata_operator_condition (line 623) | def _build_metadata_operator_condition( function apply_filters (line 811) | def apply_filters( FILE: py/core/providers/database/graphs.py class PostgresEntitiesHandler (line 41) | class PostgresEntitiesHandler(Handler): method __init__ (line 42) | def __init__(self, *args: Any, **kwargs: Any) -> None: method _get_table_name (line 55) | def _get_table_name(self, table: str) -> str: method _get_entity_table_for_store (line 59) | def _get_entity_table_for_store(self, store_type: StoreType) -> str: method _get_parent_constraint (line 63) | def _get_parent_constraint(self, store_type: StoreType) -> str: method create_tables (line 80) | async def create_tables(self) -> None: method create (line 113) | async def create( method get (line 166) | async def get( method update (line 245) | async def update( method delete (line 323) | async def delete( method get_duplicate_name_blocks (line 375) | async def get_duplicate_name_blocks( method merge_duplicate_name_blocks (line 424) | async def merge_duplicate_name_blocks( method _insert_merged_entity (line 492) | async def _insert_merged_entity( method _create_merged_entity (line 518) | async def _create_merged_entity(self, entities: list[Entity]) -> Entity: method export_to_csv (line 563) | async def export_to_csv( class PostgresRelationshipsHandler (line 683) | class PostgresRelationshipsHandler(Handler): method __init__ (line 684) | def __init__(self, *args: Any, **kwargs: Any) -> None: method _get_table_name (line 694) | def _get_table_name(self, table: str) -> str: method _get_relationship_table_for_store (line 698) | def _get_relationship_table_for_store(self, store_type: StoreType) -> ... method _get_parent_constraint (line 702) | def _get_parent_constraint(self, store_type: StoreType) -> str: method create_tables (line 719) | async def create_tables(self) -> None: method create (line 762) | async def create( method get (line 828) | async def get( method update (line 931) | async def update( method delete (line 1033) | async def delete( method export_to_csv (line 1081) | async def export_to_csv( class PostgresCommunitiesHandler (line 1213) | class PostgresCommunitiesHandler(Handler): method __init__ (line 1214) | def __init__(self, *args: Any, **kwargs: Any) -> None: method create_tables (line 1224) | async def create_tables(self) -> None: method create (line 1249) | async def create( method update (line 1305) | async def update( method delete (line 1385) | async def delete( method delete_all_communities (line 1408) | async def delete_all_communities( method get (line 1430) | async def get( method export_to_csv (line 1501) | async def export_to_csv( class PostgresGraphsHandler (line 1632) | class PostgresGraphsHandler(Handler): method __init__ (line 1637) | def __init__( method create_tables (line 1664) | async def create_tables(self) -> None: method create (line 1688) | async def create( method reset (line 1736) | async def reset(self, parent_id: UUID) -> None: method list_graphs (line 1756) | async def list_graphs( method get (line 1832) | async def get( method add_documents (line 1874) | async def add_documents(self, id: UUID, document_ids: list[UUID]) -> b... method update (line 1927) | async def update( method get_entities (line 1985) | async def get_entities( method get_relationships (line 2069) | async def get_relationships( method add_entities (line 2152) | async def add_entities( method get_all_relationships (line 2192) | async def get_all_relationships( method has_document (line 2207) | async def has_document(self, graph_id: UUID, document_id: UUID) -> bool: method get_communities (line 2239) | async def get_communities( method add_community (line 2306) | async def add_community(self, community: Community) -> None: method delete (line 2334) | async def delete(self, collection_id: UUID) -> None: method perform_graph_clustering (line 2362) | async def perform_graph_clustering( method _call_clustering_service (line 2404) | async def _call_clustering_service( method _create_graph_and_cluster (line 2439) | async def _create_graph_and_cluster( method _cluster_and_add_community_info (line 2450) | async def _cluster_and_add_community_info( method get_entity_map (line 2483) | async def get_entity_map( method graph_search (line 2549) | async def graph_search( method _build_filters (line 2622) | def _build_filters( method get_existing_document_entity_chunk_ids (line 2753) | async def get_existing_document_entity_chunk_ids( method get_entity_count (line 2766) | async def get_entity_count( method update_entity_descriptions (line 2792) | async def update_entity_descriptions(self, entities: list[Entity]): function _json_serialize (line 2812) | def _json_serialize(obj): function _add_objects (line 2820) | async def _add_objects( FILE: py/core/providers/database/limits.py class PostgresLimitsHandler (line 15) | class PostgresLimitsHandler(Handler): method __init__ (line 18) | def __init__( method create_tables (line 34) | async def create_tables(self): method _count_requests (line 45) | async def _count_requests( method _count_monthly_requests (line 78) | async def _count_monthly_requests( method determine_effective_limits (line 96) | def determine_effective_limits( method check_limits (line 155) | async def check_limits(self, user: User, route: str): method log_request (line 212) | async def log_request(self, user_id: UUID, route: str): FILE: py/core/providers/database/maintenance.py class PostgresMaintenanceHandler (line 10) | class PostgresMaintenanceHandler(Handler): method __init__ (line 11) | def __init__( method create_tables (line 29) | async def create_tables(self): method vacuum_table (line 32) | async def vacuum_table( method vacuum_all_tables (line 77) | async def vacuum_all_tables( FILE: py/core/providers/database/postgres.py class PostgresDatabaseProvider (line 37) | class PostgresDatabaseProvider(DatabaseProvider): method __init__ (line 72) | def __init__( method initialize (line 201) | async def initialize(self): method schema_exists (line 239) | async def schema_exists(self, schema_name: str) -> bool: method _get_postgres_configuration_settings (line 254) | def _get_postgres_configuration_settings( method close (line 298) | async def close(self): method __aenter__ (line 302) | async def __aenter__(self): method __aexit__ (line 306) | async def __aexit__(self, exc_type, exc, tb): FILE: py/core/providers/database/prompts_handler.py class CacheEntry (line 22) | class CacheEntry(Generic[T]): class Cache (line 31) | class Cache(Generic[T]): method __init__ (line 34) | def __init__( method get (line 46) | def get(self, key: str) -> Optional[T]: method set (line 63) | def set(self, key: str, value: T) -> None: method invalidate (line 75) | def invalidate(self, key: str) -> None: method clear (line 79) | def clear(self) -> None: method _maybe_cleanup (line 83) | def _maybe_cleanup(self) -> None: method _cleanup (line 90) | def _cleanup(self) -> None: method _evict_lru (line 102) | def _evict_lru(self) -> None: class CacheablePromptHandler (line 113) | class CacheablePromptHandler(Handler): method __init__ (line 117) | def __init__( method _cache_key (line 127) | def _cache_key( method get_cached_prompt (line 137) | async def get_cached_prompt( method get_prompt (line 172) | async def get_prompt( # type: ignore method _format_prompt (line 201) | def _format_prompt( method update_prompt (line 217) | async def update_prompt( method _update_prompt_impl (line 243) | async def _update_prompt_impl( method _get_template_info (line 253) | async def _get_template_info(self, prompt_name: str) -> Optional[dict]: method _get_prompt_impl (line 258) | async def _get_prompt_impl( class PostgresPromptsHandler (line 268) | class PostgresPromptsHandler(CacheablePromptHandler): method __init__ (line 271) | def __init__( method _load_prompts (line 286) | async def _load_prompts(self) -> None: method _load_prompts_from_database (line 294) | async def _load_prompts_from_database(self) -> None: method _load_prompts_from_yaml_directory (line 331) | async def _load_prompts_from_yaml_directory( method _get_table_name (line 395) | def _get_table_name(self, base_name: str) -> str: method _get_prompt_impl (line 400) | async def _get_prompt_impl( method _get_template_info (line 445) | async def _get_template_info(self, prompt_name: str) -> Optional[dict]... method _update_prompt_impl (line 476) | async def _update_prompt_impl( method create_tables (line 538) | async def create_tables(self): method add_prompt (line 569) | async def add_prompt( method get_all_prompts (line 661) | async def get_all_prompts(self) -> dict[str, Any]: method delete_prompt (line 692) | async def delete_prompt(self, name: str) -> None: method get_message_payload (line 708) | async def get_message_payload( FILE: py/core/providers/database/tokens.py class PostgresTokensHandler (line 9) | class PostgresTokensHandler(Handler): method __init__ (line 12) | def __init__( method create_tables (line 17) | async def create_tables(self): method blacklist_token (line 31) | async def blacklist_token( method is_token_blacklisted (line 45) | async def is_token_blacklisted(self, token: str) -> bool: method clean_expired_blacklisted_tokens (line 54) | async def clean_expired_blacklisted_tokens( FILE: py/core/providers/database/users.py function _merge_metadata (line 19) | def _merge_metadata( class PostgresUserHandler (line 52) | class PostgresUserHandler(Handler): method __init__ (line 56) | def __init__( method create_tables (line 65) | async def create_tables(self): method get_user_by_id (line 143) | async def get_user_by_id(self, id: UUID) -> User: method get_user_by_email (line 195) | async def get_user_by_email(self, email: str) -> User: method create_user (line 246) | async def create_user( method update_user (line 367) | async def update_user( method delete_user_relational (line 507) | async def delete_user_relational(self, id: UUID) -> None: method update_user_password (line 550) | async def update_user_password(self, id: UUID, new_hashed_password: str): method get_all_users (line 560) | async def get_all_users(self) -> list[User]: method store_verification_code (line 614) | async def store_verification_code( method verify_user (line 626) | async def verify_user(self, verification_code: str) -> None: method remove_verification_code (line 642) | async def remove_verification_code(self, verification_code: str): method expire_verification_code (line 650) | async def expire_verification_code(self, id: UUID): method store_reset_token (line 658) | async def store_reset_token( method get_user_id_by_reset_token (line 670) | async def get_user_id_by_reset_token( method remove_reset_token (line 682) | async def remove_reset_token(self, id: UUID): method remove_user_from_all_collections (line 690) | async def remove_user_from_all_collections(self, id: UUID): method add_user_to_collection (line 698) | async def add_user_to_collection( method remove_user_from_collection (line 735) | async def remove_user_from_collection( method get_users_in_collection (line 757) | async def get_users_in_collection( method mark_user_as_superuser (line 827) | async def mark_user_as_superuser(self, id: UUID): method get_user_id_by_verification_code (line 836) | async def get_user_id_by_verification_code( method mark_user_as_verified (line 854) | async def mark_user_as_verified(self, id: UUID): method get_users_overview (line 864) | async def get_users_overview( method _collection_exists (line 952) | async def _collection_exists(self, collection_id: UUID) -> bool: method get_user_validation_data (line 963) | async def get_user_validation_data( method store_user_api_key (line 1004) | async def store_user_api_key( method get_api_key_record (line 1029) | async def get_api_key_record(self, key_id: str) -> Optional[dict]: method get_user_api_keys (line 1048) | async def get_user_api_keys(self, user_id: UUID) -> list[dict]: method delete_api_key (line 1068) | async def delete_api_key(self, user_id: UUID, key_id: UUID) -> bool: method update_api_key_name (line 1083) | async def update_api_key_name( method export_to_csv (line 1100) | async def export_to_csv( method get_user_by_google_id (line 1220) | async def get_user_by_google_id(self, google_id: str) -> Optional[User]: method get_user_by_github_id (line 1274) | async def get_user_by_github_id(self, github_id: str) -> Optional[User]: FILE: py/core/providers/database/utils.py function psql_quote_literal (line 6) | def psql_quote_literal(value: str) -> str: FILE: py/core/providers/email/console_mock.py class ConsoleMockEmailProvider (line 9) | class ConsoleMockEmailProvider(EmailProvider): method send_email (line 13) | async def send_email( method send_verification_email (line 31) | async def send_verification_email( method send_password_reset_email (line 43) | async def send_password_reset_email( method send_password_changed_email (line 55) | async def send_password_changed_email( FILE: py/core/providers/email/mailersend.py class MailerSendEmailProvider (line 12) | class MailerSendEmailProvider(EmailProvider): method __init__ (line 15) | def __init__(self, config: EmailConfig): method _get_base_template_data (line 51) | def _get_base_template_data(self, to_email: str) -> dict: method send_email (line 60) | async def send_email( method send_verification_email (line 140) | async def send_verification_email( method send_password_reset_email (line 193) | async def send_password_reset_email( method send_password_changed_email (line 241) | async def send_password_changed_email( FILE: py/core/providers/email/sendgrid.py class SendGridEmailProvider (line 13) | class SendGridEmailProvider(EmailProvider): method __init__ (line 16) | def __init__(self, config: EmailConfig): method _get_base_template_data (line 50) | def _get_base_template_data(self, to_email: str) -> dict: method send_email (line 59) | async def send_email( method send_verification_email (line 113) | async def send_verification_email( method send_password_reset_email (line 167) | async def send_password_reset_email( method send_password_changed_email (line 216) | async def send_password_changed_email( FILE: py/core/providers/email/smtp.py class AsyncSMTPEmailProvider (line 15) | class AsyncSMTPEmailProvider(EmailProvider): method __init__ (line 18) | def __init__(self, config: EmailConfig): method _send_email_sync (line 47) | async def _send_email_sync(self, msg: MIMEMultipart) -> None: method send_email (line 71) | async def send_email( method send_verification_email (line 102) | async def send_verification_email( method send_password_reset_email (line 128) | async def send_password_reset_email( method send_password_changed_email (line 154) | async def send_password_changed_email( FILE: py/core/providers/embeddings/litellm.py class LiteLLMEmbeddingProvider (line 25) | class LiteLLMEmbeddingProvider(EmbeddingProvider): method __init__ (line 26) | def __init__( method _get_embedding_kwargs (line 67) | def _get_embedding_kwargs(self, **kwargs): method _execute_task (line 79) | async def _execute_task(self, task: dict[str, Any]) -> list[list[float]]: method _execute_task_sync (line 111) | def _execute_task_sync(self, task: dict[str, Any]) -> list[list[float]]: method async_get_embedding (line 137) | async def async_get_embedding( method get_embedding (line 155) | def get_embedding( method async_get_embeddings (line 173) | async def async_get_embeddings( method get_embeddings (line 191) | def get_embeddings( method rerank (line 209) | def rerank( method arerank (line 258) | async def arerank( FILE: py/core/providers/embeddings/ollama.py class OllamaEmbeddingProvider (line 17) | class OllamaEmbeddingProvider(EmbeddingProvider): method __init__ (line 18) | def __init__(self, config: EmbeddingConfig): method _get_embedding_kwargs (line 45) | def _get_embedding_kwargs(self, **kwargs): method _execute_task (line 52) | async def _execute_task(self, task: dict[str, Any]) -> list[list[float]]: method _execute_task_sync (line 68) | def _execute_task_sync(self, task: dict[str, Any]) -> list[list[float]]: method async_get_embedding (line 84) | async def async_get_embedding( method get_embedding (line 103) | def get_embedding( method async_get_embeddings (line 122) | async def async_get_embeddings( method get_embeddings (line 140) | def get_embeddings( method rerank (line 158) | def rerank( method arerank (line 167) | async def arerank( FILE: py/core/providers/embeddings/openai.py class OpenAIEmbeddingProvider (line 21) | class OpenAIEmbeddingProvider(EmbeddingProvider): method __init__ (line 33) | def __init__(self, config: EmbeddingConfig): method _get_dimensions (line 88) | def _get_dimensions(self): method _get_embedding_kwargs (line 96) | def _get_embedding_kwargs(self, **kwargs): method _execute_task (line 102) | async def _execute_task(self, task: dict[str, Any]) -> list[list[float]]: method _execute_task_sync (line 128) | def _execute_task_sync(self, task: dict[str, Any]) -> list[list[float]]: method async_get_embedding (line 153) | async def async_get_embedding( method get_embedding (line 172) | def get_embedding( method async_get_embeddings (line 191) | async def async_get_embeddings( method get_embeddings (line 209) | def get_embeddings( method rerank (line 227) | def rerank( method arerank (line 236) | async def arerank( method tokenize_string (line 245) | def tokenize_string(self, text: str, model: str) -> list[int]: FILE: py/core/providers/embeddings/utils.py function truncate_texts_to_token_limit (line 8) | def truncate_texts_to_token_limit(texts: list[str], model: str) -> list[... FILE: py/core/providers/file/postgres.py class PostgresFileProvider (line 17) | class PostgresFileProvider(FileProvider): method __init__ (line 20) | def __init__( method _get_table_name (line 31) | def _get_table_name(self, base_name: str) -> str: method initialize (line 34) | async def initialize(self) -> None: method upsert_file (line 66) | async def upsert_file( method store_file (line 90) | async def store_file( method _write_lobject (line 112) | async def _write_lobject( method retrieve_file (line 137) | async def retrieve_file( method retrieve_files_as_zip (line 166) | async def retrieve_files_as_zip( method _read_lobject (line 222) | async def _read_lobject(self, conn, oid: int) -> bytes: method delete_file (line 266) | async def delete_file(self, document_id: UUID) -> bool: method _delete_lobject (line 292) | async def _delete_lobject(self, conn, oid: int) -> None: method get_files_overview (line 296) | async def get_files_overview( FILE: py/core/providers/file/s3.py class S3FileProvider (line 17) | class S3FileProvider(FileProvider): method __init__ (line 20) | def __init__(self, config: FileConfig): method _get_s3_key (line 44) | def _get_s3_key(self, document_id: UUID) -> str: method initialize (line 48) | async def initialize(self) -> None: method store_file (line 65) | async def store_file( method retrieve_file (line 98) | async def retrieve_file( method retrieve_files_as_zip (line 137) | async def retrieve_files_as_zip( method delete_file (line 197) | async def delete_file(self, document_id: UUID) -> bool: method get_files_overview (line 222) | async def get_files_overview( FILE: py/core/providers/ingestion/r2r/base.py class R2RIngestionConfig (line 31) | class R2RIngestionConfig(IngestionConfig): class R2RIngestionProvider (line 39) | class R2RIngestionProvider(IngestionProvider): method __init__ (line 97) | def __init__( method _initialize_parsers (line 125) | def _initialize_parsers(self): method _build_text_splitter (line 160) | def _build_text_splitter( method validate_config (line 217) | def validate_config(self) -> bool: method chunk (line 220) | def chunk( method parse (line 244) | async def parse( method get_parser_for_document_type (line 440) | def get_parser_for_document_type(self, doc_type: DocumentType) -> Any: FILE: py/core/providers/ingestion/unstructured/base.py class FallbackElement (line 38) | class FallbackElement(R2RSerializable): class UnstructuredIngestionConfig (line 43) | class UnstructuredIngestionConfig(IngestionConfig): method to_ingestion_request (line 74) | def to_ingestion_request(self): class UnstructuredIngestionProvider (line 86) | class UnstructuredIngestionProvider(IngestionProvider): method __init__ (line 122) | def __init__( method _initialize_parsers (line 179) | def _initialize_parsers(self): method parse_fallback (line 217) | async def parse_fallback( method parse (line 285) | async def parse( method get_parser_for_document_type (line 444) | def get_parser_for_document_type(self, doc_type: DocumentType) -> str: FILE: py/core/providers/llm/anthropic.py function generate_tool_id (line 33) | def generate_tool_id() -> str: function process_images_in_message (line 38) | def process_images_in_message(message: dict) -> dict: function openai_message_to_anthropic_block (line 84) | def openai_message_to_anthropic_block(msg: dict) -> dict: class AnthropicCompletionProvider (line 173) | class AnthropicCompletionProvider(CompletionProvider): method __init__ (line 174) | def __init__(self, config: CompletionConfig, *args, **kwargs) -> None: method _get_base_args (line 180) | def _get_base_args( method _preprocess_messages (line 266) | def _preprocess_messages(self, messages: list[dict]) -> list[dict]: method _create_openai_style_message (line 280) | def _create_openai_style_message(self, content_blocks, tool_calls=None): method _convert_to_chat_completion (line 330) | def _convert_to_chat_completion(self, anthropic_msg: Message) -> dict: method _split_system_messages (line 417) | def _split_system_messages( method _execute_task (line 607) | async def _execute_task(self, task: dict[str, Any]): method _execute_task_async_nonstreaming (line 636) | async def _execute_task_async_nonstreaming( method _execute_task_async_streaming (line 659) | async def _execute_task_async_streaming( method _execute_task_sync (line 698) | def _execute_task_sync(self, task: dict[str, Any]): method _execute_task_sync_nonstreaming (line 718) | def _execute_task_sync_nonstreaming( method _execute_task_sync_streaming (line 732) | def _execute_task_sync_streaming( method _process_stream_event (line 765) | def _process_stream_event( FILE: py/core/providers/llm/azure_foundry.py class AzureFoundryCompletionProvider (line 19) | class AzureFoundryCompletionProvider(CompletionProvider): method __init__ (line 20) | def __init__(self, config: CompletionConfig, *args, **kwargs) -> None: method _get_base_args (line 48) | def _get_base_args( method _execute_task (line 67) | async def _execute_task(self, task: dict[str, Any]): method _execute_task_sync (line 91) | def _execute_task_sync(self, task: dict[str, Any]): FILE: py/core/providers/llm/litellm.py class LiteLLMCompletionProvider (line 13) | class LiteLLMCompletionProvider(CompletionProvider): method __init__ (line 14) | def __init__(self, config: CompletionConfig, *args, **kwargs) -> None: method _get_base_args (line 26) | def _get_base_args( method _execute_task (line 48) | async def _execute_task(self, task: dict[str, Any]): method _execute_task_sync (line 63) | def _execute_task_sync(self, task: dict[str, Any]): FILE: py/core/providers/llm/openai.py class OpenAICompletionProvider (line 15) | class OpenAICompletionProvider(CompletionProvider): method __init__ (line 16) | def __init__(self, config: CompletionConfig, *args, **kwargs) -> None: method _get_client_and_model (line 148) | def _get_client_and_model(self, model: str): method _get_async_client_and_model (line 205) | def _get_async_client_and_model(self, model: str): method _process_messages_with_images (line 259) | def _process_messages_with_images( method _process_array_content_with_images (line 319) | def _process_array_content_with_images(self, content: list) -> list: method _preprocess_messages (line 365) | def _preprocess_messages(self, messages: list[dict]) -> list[dict]: method _get_base_args (line 393) | def _get_base_args(self, generation_config: GenerationConfig) -> dict: method _execute_task (line 425) | async def _execute_task(self, task: dict[str, Any]): method _execute_task_sync (line 478) | def _execute_task_sync(self, task: dict[str, Any]): FILE: py/core/providers/llm/r2r_llm.py class R2RCompletionProvider (line 15) | class R2RCompletionProvider(CompletionProvider): method __init__ (line 25) | def __init__(self, config: CompletionConfig, *args, **kwargs) -> None: method _choose_subprovider_by_model (line 49) | def _choose_subprovider_by_model( method _execute_task (line 82) | async def _execute_task(self, task: dict[str, Any]): method _execute_task_sync (line 90) | def _execute_task_sync(self, task: dict[str, Any]): FILE: py/core/providers/llm/utils.py function resize_base64_image (line 11) | def resize_base64_image( function estimate_image_tokens (line 95) | def estimate_image_tokens(width: int, height: int) -> int: FILE: py/core/providers/ocr/mistral.py class MistralOCRProvider (line 13) | class MistralOCRProvider(OCRProvider): method __init__ (line 14) | def __init__(self, config: OCRConfig) -> None: method _execute_task (line 31) | async def _execute_task(self, task: dict[str, Any]) -> OCRResponse: method _execute_task_sync (line 43) | def _execute_task_sync(self, task: dict[str, Any]) -> OCRResponse: method upload_file (line 55) | async def upload_file( method process_file (line 89) | async def process_file( method process_url (line 121) | async def process_url( method process_pdf (line 153) | async def process_pdf( FILE: py/core/providers/orchestration/hatchet.py class HatchetOrchestrationProvider (line 11) | class HatchetOrchestrationProvider(OrchestrationProvider): method __init__ (line 12) | def __init__(self, config: OrchestrationConfig): method workflow (line 31) | def workflow(self, *args, **kwargs) -> Callable: method step (line 34) | def step(self, *args, **kwargs) -> Callable: method failure (line 37) | def failure(self, *args, **kwargs) -> Callable: method get_worker (line 40) | def get_worker(self, name: str, max_runs: Optional[int] = None) -> Any: method concurrency (line 46) | def concurrency(self, *args, **kwargs) -> Callable: method start_worker (line 49) | async def start_worker(self): method run_workflow (line 57) | async def run_workflow( method register_workflows (line 79) | def register_workflows( FILE: py/core/providers/orchestration/simple.py class SimpleOrchestrationProvider (line 6) | class SimpleOrchestrationProvider(OrchestrationProvider): method __init__ (line 7) | def __init__(self, config: OrchestrationConfig): method start_worker (line 12) | async def start_worker(self): method get_worker (line 15) | def get_worker(self, name: str, max_runs: int) -> Any: method step (line 18) | def step(self, *args, **kwargs) -> Any: method workflow (line 21) | def workflow(self, *args, **kwargs) -> Any: method failure (line 24) | def failure(self, *args, **kwargs) -> Any: method register_workflows (line 27) | def register_workflows( method run_workflow (line 47) | async def run_workflow( FILE: py/core/providers/scheduler/apscheduler.py class APSchedulerProvider (line 10) | class APSchedulerProvider(SchedulerProvider): method __init__ (line 13) | def __init__(self, config: SchedulerConfig): method add_job (line 17) | async def add_job(self, func, trigger, **kwargs): method start (line 23) | async def start(self): method shutdown (line 27) | async def shutdown(self): method __aenter__ (line 32) | async def __aenter__(self): method __aexit__ (line 36) | async def __aexit__(self, exc_type, exc, tb): FILE: py/core/utils/__init__.py function extract_citations (line 29) | def extract_citations(text: str) -> list[str]: function extract_citation_spans (line 55) | def extract_citation_spans(text: str) -> dict[str, list[Tuple[int, int]]]: class CitationTracker (line 90) | class CitationTracker: method __init__ (line 102) | def __init__(self): method is_new_citation (line 110) | def is_new_citation(self, citation_id: str) -> bool: method is_new_span (line 129) | def is_new_span(self, citation_id: str, span: Tuple[int, int]) -> bool: method get_all_spans (line 158) | def get_all_spans(self) -> dict[str, list[Tuple[int, int]]]: method reset (line 169) | def reset(self) -> None: function find_new_citation_spans (line 178) | def find_new_citation_spans( FILE: py/core/utils/context.py function get_current_project_schema (line 8) | def get_current_project_schema() -> str | None: function set_project_schema (line 13) | def set_project_schema(schema_name: str) -> Token: FILE: py/core/utils/logging_config.py class HTTPStatusFilter (line 9) | class HTTPStatusFilter(logging.Filter): method filter (line 33) | def filter(self, record: logging.LogRecord) -> bool: function configure_logging (line 162) | def configure_logging() -> Path: FILE: py/core/utils/sentry.py function init_sentry (line 7) | def init_sentry(): FILE: py/core/utils/serper.py function process_json (line 11) | def process_json(json_object, indent=0): class SerperClient (line 35) | class SerperClient: method __init__ (line 36) | def __init__(self, api_base: str = "google.serper.dev") -> None: method _extract_results (line 50) | def _extract_results(result_data: dict) -> list: method get_raw (line 75) | def get_raw(self, query: str, limit: int = 10) -> list: FILE: py/migrations/env.py function get_schema_name (line 23) | def get_schema_name(): function include_object (line 28) | def include_object(object, name, type_, reflected, compare_to): function run_migrations_offline (line 36) | def run_migrations_offline() -> None: function run_migrations_online (line 58) | def run_migrations_online() -> None: FILE: py/migrations/versions/2fac23e4d91b_migrate_to_document_search.py class Vector (line 40) | class Vector(UserDefinedType): method get_col_spec (line 41) | def get_col_spec(self, **kw): function run_async (line 45) | def run_async(coroutine): function async_generate_all_summaries (line 51) | async def async_generate_all_summaries(): function generate_all_summaries (line 183) | def generate_all_summaries(): function check_if_upgrade_needed (line 188) | def check_if_upgrade_needed(): function upgrade (line 221) | def upgrade() -> None: function downgrade (line 294) | def downgrade() -> None: FILE: py/migrations/versions/3efc7b3b1b3d_add_total_tokens_count.py function count_tokens_for_text (line 29) | def count_tokens_for_text(text: str, model: str = "gpt-3.5-turbo") -> int: function check_if_upgrade_needed (line 43) | def check_if_upgrade_needed() -> bool: function upgrade (line 71) | def upgrade() -> None: function downgrade (line 167) | def downgrade() -> None: FILE: py/migrations/versions/7eb70560f406_add_limits_overrides_to_users.py function check_if_upgrade_needed (line 24) | def check_if_upgrade_needed(): function upgrade (line 51) | def upgrade() -> None: function downgrade (line 63) | def downgrade() -> None: FILE: py/migrations/versions/8077140e1e99_v3_api_database_revision.py function check_if_upgrade_needed (line 28) | def check_if_upgrade_needed(): function upgrade (line 56) | def upgrade() -> None: function downgrade (line 219) | def downgrade() -> None: FILE: py/migrations/versions/c45a9cf6a8a4_add_user_and_document_count_to_.py function check_if_upgrade_needed (line 28) | def check_if_upgrade_needed(): function upgrade (line 48) | def upgrade(): function downgrade (line 87) | def downgrade(): FILE: py/migrations/versions/d342e632358a_migrate_to_asyncpg.py class Vector (line 29) | class Vector(UserDefinedType): method get_col_spec (line 30) | def get_col_spec(self, **kw): function check_if_upgrade_needed (line 34) | def check_if_upgrade_needed(): function upgrade (line 66) | def upgrade() -> None: function downgrade (line 177) | def downgrade() -> None: FILE: py/r2r/__init__.py function get_version (line 18) | def get_version(): FILE: py/r2r/mcp.py function id_to_shorthand (line 5) | def id_to_shorthand(id: str) -> str: function format_search_results_for_llm (line 9) | def format_search_results_for_llm( function search (line 107) | async def search(query: str) -> str: function rag (line 128) | async def rag(query: str) -> str: FILE: py/r2r/serve.py function create_app (line 22) | async def create_app( function run_server (line 61) | def run_server( function main (line 103) | def main(): FILE: py/sdk/asnyc_methods/chunks.py class ChunksSDK (line 15) | class ChunksSDK: method __init__ (line 18) | def __init__(self, client): method update (line 21) | async def update( method retrieve (line 43) | async def retrieve( method list_by_document (line 65) | async def list_by_document( method delete (line 99) | async def delete( method list (line 119) | async def list( method search (line 158) | async def search( FILE: py/sdk/asnyc_methods/collections.py class CollectionsSDK (line 14) | class CollectionsSDK: method __init__ (line 15) | def __init__(self, client): method create (line 18) | async def create( method list (line 42) | async def list( method retrieve (line 74) | async def retrieve( method update (line 92) | async def update( method delete (line 127) | async def delete( method list_documents (line 145) | async def list_documents( method add_document (line 175) | async def add_document( method remove_document (line 197) | async def remove_document( method list_users (line 219) | async def list_users( method add_user (line 246) | async def add_user( method remove_user (line 266) | async def remove_user( method extract (line 288) | async def extract( method retrieve_by_name (line 321) | async def retrieve_by_name( FILE: py/sdk/asnyc_methods/conversations.py class ConversationsSDK (line 17) | class ConversationsSDK: method __init__ (line 18) | def __init__(self, client): method create (line 21) | async def create( method list (line 44) | async def list( method retrieve (line 76) | async def retrieve( method update (line 96) | async def update( method delete (line 123) | async def delete( method add_message (line 143) | async def add_message( method update_message (line 181) | async def update_message( method export (line 211) | async def export( method export_messages (line 262) | async def export_messages( FILE: py/sdk/asnyc_methods/documents.py class DocumentsSDK (line 35) | class DocumentsSDK: method __init__ (line 38) | def __init__(self, client): method create (line 41) | async def create( method append_metadata (line 185) | async def append_metadata( method replace_metadata (line 209) | async def replace_metadata( method retrieve (line 233) | async def retrieve( method download (line 253) | async def download( method download_zip (line 276) | async def download_zip( method export (line 326) | async def export( method export_entities (line 376) | async def export_entities( method export_relationships (line 428) | async def export_relationships( method delete (line 480) | async def delete( method list_chunks (line 500) | async def list_chunks( method list_collections (line 532) | async def list_collections( method delete_by_filter (line 562) | async def delete_by_filter( method extract (line 584) | async def extract( method list_entities (line 615) | async def list_entities( method list_relationships (line 647) | async def list_relationships( method list (line 685) | async def list( method search (line 723) | async def search( method deduplicate (line 757) | async def deduplicate( FILE: py/sdk/asnyc_methods/graphs.py class GraphsSDK (line 19) | class GraphsSDK: method __init__ (line 22) | def __init__(self, client): method list (line 25) | async def list( method retrieve (line 54) | async def retrieve( method reset (line 72) | async def reset( method update (line 95) | async def update( method list_entities (line 126) | async def list_entities( method get_entity (line 156) | async def get_entity( method remove_entity (line 178) | async def remove_entity( method list_relationships (line 198) | async def list_relationships( method get_relationship (line 228) | async def get_relationship( method remove_relationship (line 250) | async def remove_relationship( method build (line 272) | async def build( method list_communities (line 302) | async def list_communities( method get_community (line 332) | async def get_community( method update_community (line 354) | async def update_community( method delete_community (line 407) | async def delete_community( method pull (line 429) | async def pull( method remove_document (line 462) | async def remove_document( method create_entity (line 486) | async def create_entity( method create_relationship (line 524) | async def create_relationship( method create_community (line 574) | async def create_community( FILE: py/sdk/asnyc_methods/indices.py class IndicesSDK (line 11) | class IndicesSDK: method __init__ (line 12) | def __init__(self, client): method create (line 15) | async def create( method list (line 42) | async def list( method retrieve (line 74) | async def retrieve( method delete (line 96) | async def delete( FILE: py/sdk/asnyc_methods/prompts.py class PromptsSDK (line 12) | class PromptsSDK: method __init__ (line 13) | def __init__(self, client): method create (line 16) | async def create( method list (line 42) | async def list(self) -> WrappedPromptsResponse: method retrieve (line 56) | async def retrieve( method update (line 85) | async def update( method delete (line 114) | async def delete(self, name: str) -> WrappedBooleanResponse: FILE: py/sdk/asnyc_methods/retrieval.py class RetrievalSDK (line 29) | class RetrievalSDK: method __init__ (line 32) | def __init__(self, client): method search (line 35) | async def search( method completion (line 70) | async def completion( method embedding (line 106) | async def embedding(self, text: str) -> WrappedEmbeddingResponse: method rag (line 128) | async def rag( method agent (line 209) | async def agent( FILE: py/sdk/asnyc_methods/system.py class SystemSDK (line 8) | class SystemSDK: method __init__ (line 9) | def __init__(self, client): method health (line 12) | async def health(self) -> WrappedGenericMessageResponse: method settings (line 20) | async def settings(self) -> WrappedSettingsResponse: method status (line 32) | async def status(self) -> WrappedServerStatsResponse: FILE: py/sdk/asnyc_methods/users.py class UsersSDK (line 18) | class UsersSDK: method __init__ (line 19) | def __init__(self, client): method create (line 22) | async def create( method send_verification_email (line 64) | async def send_verification_email( method delete (line 77) | async def delete( method verify_email (line 102) | async def verify_email( method login (line 127) | async def login(self, email: str, password: str) -> WrappedLoginResponse: method logout (line 164) | async def logout(self) -> WrappedGenericMessageResponse | None: method refresh_token (line 181) | async def refresh_token(self) -> WrappedTokenResponse: method change_password (line 199) | async def change_password( method request_password_reset (line 224) | async def request_password_reset( method reset_password (line 244) | async def reset_password( method list (line 269) | async def list( method retrieve (line 300) | async def retrieve( method me (line 320) | async def me( method update (line 336) | async def update( method list_collections (line 385) | async def list_collections( method add_to_collection (line 415) | async def add_to_collection( method remove_from_collection (line 434) | async def remove_from_collection( method create_api_key (line 456) | async def create_api_key( method list_api_keys (line 487) | async def list_api_keys( method delete_api_key (line 507) | async def delete_api_key( method get_limits (line 529) | async def get_limits(self) -> WrappedLimitsResponse: method oauth_google_authorize (line 538) | async def oauth_google_authorize(self) -> WrappedGenericMessageResponse: method oauth_github_authorize (line 552) | async def oauth_github_authorize(self) -> WrappedGenericMessageResponse: method oauth_google_callback (line 566) | async def oauth_google_callback( method oauth_github_callback (line 580) | async def oauth_github_callback( FILE: py/sdk/async_client.py class R2RAsyncClient (line 25) | class R2RAsyncClient(BaseClient): method __init__ (line 28) | def __init__( method _make_request (line 47) | async def _make_request( method _make_streaming_request (line 72) | async def _make_streaming_request( method _handle_response (line 88) | async def _handle_response(self, response: Response) -> None: method close (line 111) | async def close(self): method __aenter__ (line 114) | async def __aenter__(self): method __aexit__ (line 117) | async def __aexit__(self, exc_type, exc_val, exc_tb): method set_api_key (line 120) | def set_api_key(self, api_key: str) -> None: method unset_api_key (line 125) | def unset_api_key(self) -> None: method set_base_url (line 128) | def set_base_url(self, base_url: str) -> None: method set_project_name (line 131) | def set_project_name(self, project_name: str | None) -> None: method unset_project_name (line 134) | def unset_project_name(self) -> None: FILE: py/sdk/base/base_client.py class BaseClient (line 6) | class BaseClient: method __init__ (line 7) | def __init__( method _get_auth_header (line 22) | def _get_auth_header(self) -> dict[str, str]: method _get_full_url (line 34) | def _get_full_url(self, endpoint: str, version: str = "v3") -> str: method _prepare_request_args (line 37) | def _prepare_request_args(self, endpoint: str, **kwargs) -> dict: FILE: py/sdk/sync_client.py class R2RClient (line 24) | class R2RClient(BaseClient): method __init__ (line 25) | def __init__( method _make_request (line 44) | def _make_request( method _make_streaming_request (line 70) | def _make_streaming_request( method _handle_response (line 126) | def _handle_response(self, response: Response) -> None: method set_api_key (line 149) | def set_api_key(self, api_key: str) -> None: method unset_api_key (line 154) | def unset_api_key(self) -> None: method set_base_url (line 157) | def set_base_url(self, base_url: str) -> None: method set_project_name (line 160) | def set_project_name(self, project_name: str | None) -> None: method unset_project_name (line 163) | def unset_project_name(self) -> None: FILE: py/sdk/sync_methods/chunks.py class ChunksSDK (line 15) | class ChunksSDK: method __init__ (line 18) | def __init__(self, client): method update (line 21) | def update( method retrieve (line 43) | def retrieve( method list_by_document (line 65) | def list_by_document( method delete (line 99) | def delete( method list (line 119) | def list( method search (line 158) | def search( FILE: py/sdk/sync_methods/collections.py class CollectionsSDK (line 14) | class CollectionsSDK: method __init__ (line 15) | def __init__(self, client): method create (line 18) | def create( method list (line 42) | def list( method retrieve (line 74) | def retrieve( method update (line 92) | def update( method delete (line 127) | def delete( method list_documents (line 145) | def list_documents( method add_document (line 175) | def add_document( method remove_document (line 197) | def remove_document( method list_users (line 219) | def list_users( method add_user (line 246) | def add_user( method remove_user (line 266) | def remove_user( method extract (line 288) | def extract( method retrieve_by_name (line 321) | def retrieve_by_name( FILE: py/sdk/sync_methods/conversations.py class ConversationsSDK (line 15) | class ConversationsSDK: method __init__ (line 16) | def __init__(self, client): method create (line 19) | def create( method list (line 41) | def list( method retrieve (line 73) | def retrieve( method update (line 93) | def update( method delete (line 120) | def delete( method add_message (line 140) | def add_message( method update_message (line 178) | def update_message( method export (line 208) | def export( method export_messages (line 259) | def export_messages( FILE: py/sdk/sync_methods/documents.py class DocumentsSDK (line 34) | class DocumentsSDK: method __init__ (line 37) | def __init__(self, client): method create (line 40) | def create( method append_metadata (line 184) | def append_metadata( method replace_metadata (line 208) | def replace_metadata( method retrieve (line 232) | def retrieve( method download (line 252) | def download( method download_zip (line 275) | def download_zip( method export (line 325) | def export( method export_entities (line 373) | def export_entities( method export_relationships (line 425) | def export_relationships( method delete (line 477) | def delete( method list_chunks (line 497) | def list_chunks( method list_collections (line 529) | def list_collections( method delete_by_filter (line 559) | def delete_by_filter( method extract (line 581) | def extract( method list_entities (line 612) | def list_entities( method list_relationships (line 644) | def list_relationships( method list (line 682) | def list( method search (line 720) | def search( method deduplicate (line 755) | def deduplicate( FILE: py/sdk/sync_methods/graphs.py class GraphsSDK (line 19) | class GraphsSDK: method __init__ (line 22) | def __init__(self, client): method list (line 25) | def list( method retrieve (line 54) | def retrieve( method reset (line 72) | def reset( method update (line 95) | def update( method list_entities (line 126) | def list_entities( method get_entity (line 156) | def get_entity( method remove_entity (line 178) | def remove_entity( method list_relationships (line 200) | def list_relationships( method get_relationship (line 230) | def get_relationship( method remove_relationship (line 252) | def remove_relationship( method build (line 274) | def build( method list_communities (line 304) | def list_communities( method get_community (line 334) | def get_community( method update_community (line 356) | def update_community( method delete_community (line 409) | def delete_community( method pull (line 431) | def pull( method remove_document (line 464) | def remove_document( method create_entity (line 488) | def create_entity( method create_relationship (line 526) | def create_relationship( method create_community (line 576) | def create_community( FILE: py/sdk/sync_methods/indices.py class IndicesSDK (line 11) | class IndicesSDK: method __init__ (line 12) | def __init__(self, client): method create (line 15) | def create( method list (line 45) | def list( method retrieve (line 77) | def retrieve( method delete (line 99) | def delete( FILE: py/sdk/sync_methods/prompts.py class PromptsSDK (line 12) | class PromptsSDK: method __init__ (line 13) | def __init__(self, client): method create (line 16) | def create( method list (line 42) | def list(self) -> WrappedPromptsResponse: method retrieve (line 56) | def retrieve( method update (line 85) | def update( method delete (line 114) | def delete(self, name: str) -> WrappedBooleanResponse: FILE: py/sdk/sync_methods/retrieval.py function parse_retrieval_event (line 40) | def parse_retrieval_event(raw: dict) -> Optional[AgentEvent]: class RetrievalSDK (line 150) | class RetrievalSDK: method __init__ (line 153) | def __init__(self, client): method search (line 156) | def search( method completion (line 191) | def completion( method embedding (line 228) | def embedding(self, text: str) -> WrappedEmbeddingResponse: method rag (line 250) | def rag( method agent (line 329) | def agent( FILE: py/sdk/sync_methods/system.py class SystemSDK (line 8) | class SystemSDK: method __init__ (line 9) | def __init__(self, client): method health (line 12) | def health(self) -> WrappedGenericMessageResponse: method settings (line 20) | def settings(self) -> WrappedSettingsResponse: method status (line 32) | def status(self) -> WrappedServerStatsResponse: FILE: py/sdk/sync_methods/users.py class UsersSDK (line 18) | class UsersSDK: method __init__ (line 19) | def __init__(self, client): method create (line 22) | def create( method send_verification_email (line 64) | def send_verification_email( method delete (line 77) | def delete(self, id: str | UUID, password: str) -> WrappedBooleanRespo... method verify_email (line 100) | def verify_email( method login (line 125) | def login(self, email: str, password: str) -> WrappedLoginResponse: method logout (line 162) | def logout(self) -> WrappedGenericMessageResponse | None: method refresh_token (line 179) | def refresh_token(self) -> WrappedTokenResponse: method change_password (line 198) | def change_password( method request_password_reset (line 223) | def request_password_reset( method reset_password (line 243) | def reset_password( method list (line 268) | def list( method retrieve (line 299) | def retrieve( method me (line 319) | def me( method update (line 335) | def update( method list_collections (line 384) | def list_collections( method add_to_collection (line 414) | def add_to_collection( method remove_from_collection (line 433) | def remove_from_collection( method create_api_key (line 455) | def create_api_key( method list_api_keys (line 486) | def list_api_keys( method delete_api_key (line 506) | def delete_api_key( method get_limits (line 528) | def get_limits(self) -> WrappedLimitsResponse: method oauth_google_authorize (line 537) | def oauth_google_authorize(self) -> WrappedGenericMessageResponse: method oauth_github_authorize (line 551) | def oauth_github_authorize(self) -> WrappedGenericMessageResponse: method oauth_google_callback (line 564) | def oauth_google_callback( method oauth_github_callback (line 578) | def oauth_github_callback( FILE: py/shared/abstractions/base.py class R2RSerializable (line 13) | class R2RSerializable(BaseModel): method from_dict (line 15) | def from_dict(cls: Type[T], data: dict[str, Any] | str) -> T: method as_dict (line 25) | def as_dict(self) -> dict[str, Any]: method to_dict (line 29) | def to_dict(self) -> dict[str, Any]: method to_json (line 33) | def to_json(self) -> str: method from_json (line 38) | def from_json(cls: Type[T], json_str: str) -> T: method _serialize_values (line 42) | def _serialize_values(data: Any) -> Any: class Config (line 59) | class Config: class AsyncSyncMeta (line 67) | class AsyncSyncMeta(type): method get_event_loop (line 71) | def get_event_loop(cls): method __new__ (line 77) | def __new__(cls, name, bases, dct): function syncable (line 142) | def syncable(func): FILE: py/shared/abstractions/document.py class DocumentType (line 18) | class DocumentType(str, Enum): class Document (line 95) | class Document(R2RSerializable): class Config (line 102) | class Config: class IngestionStatus (line 111) | class IngestionStatus(str, Enum): method __str__ (line 126) | def __str__(self): method table_name (line 130) | def table_name(cls) -> str: method id_column (line 134) | def id_column(cls) -> str: class GraphExtractionStatus (line 138) | class GraphExtractionStatus(str, Enum): method __str__ (line 147) | def __str__(self): method table_name (line 151) | def table_name(cls) -> str: method id_column (line 155) | def id_column(cls) -> str: class GraphConstructionStatus (line 159) | class GraphConstructionStatus(str, Enum): method __str__ (line 168) | def __str__(self): method table_name (line 172) | def table_name(cls) -> str: method id_column (line 176) | def id_column(cls) -> str: class DocumentResponse (line 180) | class DocumentResponse(R2RSerializable): method convert_to_db_entry (line 201) | def convert_to_db_entry(self): class Config (line 230) | class Config: class UnprocessedChunk (line 253) | class UnprocessedChunk(R2RSerializable): class UpdateChunk (line 263) | class UpdateChunk(R2RSerializable): class DocumentChunk (line 271) | class DocumentChunk(R2RSerializable): class RawChunk (line 282) | class RawChunk(R2RSerializable): class IngestionMode (line 286) | class IngestionMode(str, Enum): class ChunkEnrichmentSettings (line 293) | class ChunkEnrichmentSettings(R2RSerializable): class IngestionConfig (line 314) | class IngestionConfig(R2RSerializable): method supported_providers (line 337) | def supported_providers(self) -> list[str]: method validate_config (line 340) | def validate_config(self) -> None: method get_default (line 345) | def get_default(cls, mode: str) -> "IngestionConfig": FILE: py/shared/abstractions/exception.py class R2RException (line 6) | class R2RException(Exception): method __init__ (line 7) | def __init__( method to_dict (line 14) | def to_dict(self): class R2RClientException (line 23) | class R2RClientException(R2RException): method __init__ (line 26) | def __init__( method to_dict (line 35) | def to_dict(self): class R2RDocumentProcessingError (line 41) | class R2RDocumentProcessingError(R2RException): method __init__ (line 42) | def __init__( method to_dict (line 51) | def to_dict(self): class PDFParsingError (line 57) | class PDFParsingError(R2RException): method __init__ (line 60) | def __init__( class PopplerNotFoundError (line 72) | class PopplerNotFoundError(PDFParsingError): method __init__ (line 75) | def __init__(self): FILE: py/shared/abstractions/graph.py class Entity (line 14) | class Entity(R2RSerializable): method __str__ (line 27) | def __str__(self): method __init__ (line 30) | def __init__(self, **kwargs): class Relationship (line 39) | class Relationship(R2RSerializable): method __init__ (line 59) | def __init__(self, **kwargs): class Community (line 69) | class Community(R2RSerializable): method __init__ (line 88) | def __init__(self, **kwargs): method from_dict (line 98) | def from_dict(cls, data: dict[str, Any] | str) -> "Community": class GraphExtraction (line 107) | class GraphExtraction(R2RSerializable): class Graph (line 114) | class Graph(R2RSerializable): class Config (line 126) | class Config: method from_dict (line 131) | def from_dict(cls, data: dict[str, Any] | str) -> "Graph": method __init__ (line 139) | def __init__(self, **kwargs): class StoreType (line 143) | class StoreType(str, Enum): class GraphCreationSettings (line 148) | class GraphCreationSettings(R2RSerializable): class GraphEnrichmentSettings (line 200) | class GraphEnrichmentSettings(R2RSerializable): class GraphCommunitySettings (line 230) | class GraphCommunitySettings(R2RSerializable): FILE: py/shared/abstractions/llm.py class Function (line 18) | class Function(BaseModel): class ChatCompletionMessageToolCall (line 31) | class ChatCompletionMessageToolCall(BaseModel): class FunctionCall (line 42) | class FunctionCall(BaseModel): class ChatCompletionMessage (line 55) | class ChatCompletionMessage(BaseModel): class Choice (line 85) | class Choice(BaseModel): class LLMChatCompletion (line 113) | class LLMChatCompletion(BaseModel): class RAGCompletion (line 149) | class RAGCompletion: method __init__ (line 153) | def __init__( class GenerationConfig (line 162) | class GenerationConfig(R2RSerializable): method set_default (line 231) | def set_default(cls, **kwargs): method __init__ (line 240) | def __init__(self, **data): method __str__ (line 270) | def __str__(self): class Config (line 273) | class Config: class MessageType (line 290) | class MessageType(Enum): method __str__ (line 297) | def __str__(self): class Message (line 301) | class Message(R2RSerializable): class Config (line 315) | class Config: FILE: py/shared/abstractions/prompt.py class Prompt (line 13) | class Prompt(BaseModel): method format_prompt (line 23) | def format_prompt(self, inputs: dict[str, Any]) -> str: method _validate_inputs (line 27) | def _validate_inputs(self, inputs: dict[str, Any]) -> None: method _convert_type (line 37) | def _convert_type(self, type_name: str) -> type: FILE: py/shared/abstractions/search.py function generate_id_from_label (line 16) | def generate_id_from_label(label) -> UUID: class ChunkSearchResult (line 20) | class ChunkSearchResult(R2RSerializable): method __str__ (line 31) | def __str__(self) -> str: method __repr__ (line 39) | def __repr__(self) -> str: method as_dict (line 42) | def as_dict(self) -> dict: class Config (line 53) | class Config: class GraphSearchResultType (line 71) | class GraphSearchResultType(str, Enum): class GraphEntityResult (line 77) | class GraphEntityResult(R2RSerializable): class Config (line 83) | class Config: class GraphRelationshipResult (line 93) | class GraphRelationshipResult(R2RSerializable): class Config (line 104) | class Config: method __str__ (line 113) | def __str__(self) -> str: class GraphCommunityResult (line 117) | class GraphCommunityResult(R2RSerializable): class Config (line 123) | class Config: method __str__ (line 134) | def __str__(self) -> str: class GraphSearchResult (line 140) | class GraphSearchResult(R2RSerializable): method __str__ (line 148) | def __str__(self) -> str: class Config (line 151) | class Config: class WebPageSearchResult (line 170) | class WebPageSearchResult(R2RSerializable): class Config (line 180) | class Config: method __str__ (line 197) | def __str__(self) -> str: class RelatedSearchResult (line 201) | class RelatedSearchResult(R2RSerializable): class PeopleAlsoAskResult (line 207) | class PeopleAlsoAskResult(R2RSerializable): class WebSearchResult (line 216) | class WebSearchResult(R2RSerializable): method from_serper_results (line 222) | def from_serper_results(cls, results: list[dict]) -> "WebSearchResult": class AggregateSearchResult (line 255) | class AggregateSearchResult(R2RSerializable): method __str__ (line 267) | def __str__(self) -> str: method as_dict (line 275) | def as_dict(self) -> dict: class Config (line 309) | class Config: class HybridSearchSettings (line 392) | class HybridSearchSettings(R2RSerializable): class ChunkSearchSettings (line 410) | class ChunkSearchSettings(R2RSerializable): class GraphSearchSettings (line 431) | class GraphSearchSettings(R2RSerializable): class SearchSettings (line 443) | class SearchSettings(R2RSerializable): class Config (line 525) | class Config: method __init__ (line 564) | def __init__(self, **data): method model_dump (line 572) | def model_dump(self, *args, **kwargs): method get_default (line 576) | def get_default(cls, mode: str) -> "SearchSettings": class SearchMode (line 601) | class SearchMode(str, Enum): function select_search_filters (line 609) | def select_search_filters( FILE: py/shared/abstractions/tool.py class Tool (line 6) | class Tool(R2RSerializable): class Config (line 15) | class Config: method set_context (line 19) | def set_context(self, context: Any) -> None: method execute (line 23) | async def execute(self, *args, **kwargs): class ToolResult (line 37) | class ToolResult(R2RSerializable): FILE: py/shared/abstractions/user.py class Collection (line 12) | class Collection(BaseModel): class Config (line 23) | class Config: method __init__ (line 27) | def __init__(self, **data): class Token (line 33) | class Token(BaseModel): class TokenData (line 38) | class TokenData(BaseModel): class User (line 44) | class User(R2RSerializable): FILE: py/shared/abstractions/vector.py class VectorType (line 12) | class VectorType(str, Enum): class IndexMethod (line 16) | class IndexMethod(str, Enum): method __str__ (line 32) | def __str__(self) -> str: class IndexMeasure (line 36) | class IndexMeasure(str, Enum): method __str__ (line 53) | def __str__(self) -> str: method ops (line 57) | def ops(self) -> str: method pgvector_repr (line 68) | def pgvector_repr(self) -> str: class IndexArgsIVFFlat (line 79) | class IndexArgsIVFFlat(R2RSerializable): class IndexArgsHNSW (line 90) | class IndexArgsHNSW(R2RSerializable): class VectorTableName (line 109) | class VectorTableName(str, Enum): method __str__ (line 119) | def __str__(self) -> str: class VectorQuantizationType (line 123) | class VectorQuantizationType(str, Enum): method __str__ (line 138) | def __str__(self) -> str: method db_type (line 142) | def db_type(self) -> str: class VectorQuantizationSettings (line 152) | class VectorQuantizationSettings(R2RSerializable): class Vector (line 158) | class Vector(R2RSerializable): method __init__ (line 165) | def __init__(self, **data): method __repr__ (line 176) | def __repr__(self) -> str: class VectorEntry (line 182) | class VectorEntry(R2RSerializable): method __str__ (line 194) | def __str__(self) -> str: method __repr__ (line 207) | def __repr__(self) -> str: class StorageResult (line 212) | class StorageResult(R2RSerializable): method __str__ (line 220) | def __str__(self) -> str: method __repr__ (line 224) | def __repr__(self) -> str: class IndexConfig (line 229) | class IndexConfig(BaseModel): FILE: py/shared/api/models/auth/responses.py class TokenResponse (line 7) | class TokenResponse(BaseModel): FILE: py/shared/api/models/base.py class R2RResults (line 8) | class R2RResults(BaseModel, Generic[T]): class PaginatedR2RResult (line 12) | class PaginatedR2RResult(BaseModel, Generic[T]): class GenericBooleanResponse (line 17) | class GenericBooleanResponse(BaseModel): class GenericMessageResponse (line 21) | class GenericMessageResponse(BaseModel): FILE: py/shared/api/models/graph/responses.py class GraphResponse (line 18) | class GraphResponse(BaseModel): FILE: py/shared/api/models/ingestion/responses.py class IngestionResponse (line 11) | class IngestionResponse(BaseModel): class Config (line 25) | class Config: class UpdateResponse (line 35) | class UpdateResponse(BaseModel): class Config (line 49) | class Config: class VectorIndexResponse (line 59) | class VectorIndexResponse(BaseModel): class VectorIndicesResponse (line 63) | class VectorIndicesResponse(BaseModel): FILE: py/shared/api/models/management/responses.py class PromptResponse (line 13) | class PromptResponse(BaseModel): class ServerStats (line 22) | class ServerStats(BaseModel): class SettingsResponse (line 29) | class SettingsResponse(BaseModel): class ChunkResponse (line 36) | class ChunkResponse(BaseModel): class CollectionResponse (line 46) | class CollectionResponse(BaseModel): class ConversationResponse (line 59) | class ConversationResponse(BaseModel): class MessageResponse (line 66) | class MessageResponse(BaseModel): class ApiKey (line 72) | class ApiKey(BaseModel): class ApiKeyNoPriv (line 79) | class ApiKeyNoPriv(BaseModel): class LoginResponse (line 87) | class LoginResponse(BaseModel): class UsageLimit (line 92) | class UsageLimit(BaseModel): class StorageTypeLimit (line 98) | class StorageTypeLimit(BaseModel): class StorageLimits (line 104) | class StorageLimits(BaseModel): class RouteUsage (line 110) | class RouteUsage(BaseModel): class Usage (line 115) | class Usage(BaseModel): class SystemDefaults (line 121) | class SystemDefaults(BaseModel): class LimitsResponse (line 127) | class LimitsResponse(BaseModel): FILE: py/shared/api/models/retrieval/responses.py class CitationSpan (line 19) | class CitationSpan(R2RSerializable): class Citation (line 36) | class Citation(R2RSerializable): class Config (line 81) | class Config: class RAGResponse (line 138) | class RAGResponse(R2RSerializable): class Config (line 159) | class Config: class AgentResponse (line 257) | class AgentResponse(R2RSerializable): class Config (line 263) | class Config: class DocumentSearchResult (line 405) | class DocumentSearchResult(BaseModel): class SSEEventBase (line 421) | class SSEEventBase(BaseModel): class SearchResultsData (line 427) | class SearchResultsData(BaseModel): class SearchResultsEvent (line 433) | class SearchResultsEvent(SSEEventBase): class DeltaPayload (line 438) | class DeltaPayload(BaseModel): class MessageDelta (line 444) | class MessageDelta(BaseModel): class Delta (line 449) | class Delta(BaseModel): class MessageData (line 453) | class MessageData(BaseModel): class MessageEvent (line 459) | class MessageEvent(SSEEventBase): class CitationSpanData (line 465) | class CitationSpanData(BaseModel): class CitationData (line 479) | class CitationData(BaseModel): class Config (line 508) | class Config: class CitationEvent (line 514) | class CitationEvent(SSEEventBase): class FinalAnswerData (line 520) | class FinalAnswerData(BaseModel): class FinalAnswerEvent (line 525) | class FinalAnswerEvent(SSEEventBase): class ToolCallData (line 531) | class ToolCallData(BaseModel): class ToolCallEvent (line 537) | class ToolCallEvent(SSEEventBase): class ToolResultData (line 543) | class ToolResultData(BaseModel): class ToolResultEvent (line 549) | class ToolResultEvent(SSEEventBase): class UnknownEvent (line 555) | class UnknownEvent(SSEEventBase): class ThinkingData (line 560) | class ThinkingData(BaseModel): class ThinkingEvent (line 566) | class ThinkingEvent(SSEEventBase): FILE: py/shared/utils/base_utils.py function id_to_shorthand (line 25) | def id_to_shorthand(id: str | UUID): function format_search_results_for_llm (line 29) | def format_search_results_for_llm( function _generate_id_from_label (line 137) | def _generate_id_from_label(label) -> UUID: function generate_id (line 141) | def generate_id(label: Optional[str] = None) -> UUID: function generate_document_id (line 148) | def generate_document_id(filename: str, user_id: UUID) -> UUID: function generate_extraction_id (line 154) | def generate_extraction_id( function generate_default_user_collection_id (line 162) | def generate_default_user_collection_id(user_id: UUID) -> UUID: function generate_user_id (line 167) | def generate_user_id(email: str) -> UUID: function generate_default_prompt_id (line 172) | def generate_default_prompt_id(prompt_name: str) -> UUID: function generate_entity_document_id (line 177) | def generate_entity_document_id() -> UUID: function validate_uuid (line 183) | def validate_uuid(uuid_str: str) -> UUID: function update_settings_from_dict (line 187) | def update_settings_from_dict(server_settings, settings_dict: dict): function _decorate_vector_type (line 204) | def _decorate_vector_type( function _get_vector_column_str (line 211) | def _get_vector_column_str( function deep_update (line 229) | def deep_update( function tokens_count_for_message (line 250) | def tokens_count_for_message(message, encoding): function num_tokens_from_messages (line 272) | def num_tokens_from_messages(messages, model="gpt-4.1"): class SearchResultsCollector (line 288) | class SearchResultsCollector: method __init__ (line 294) | def __init__(self): method results (line 299) | def results(self): method results (line 304) | def results(self, value): method add_aggregate_result (line 329) | def add_aggregate_result(self, agg): method add_result (line 378) | def add_result(self, result_obj, source_type=None): method _detect_result_type (line 391) | def _detect_result_type(self, obj): method find_by_short_id (line 485) | def find_by_short_id(self, short_id): method get_results_by_type (line 539) | def get_results_by_type(self, type_name): method __repr__ (line 547) | def __repr__(self): method get_all_results (line 555) | def get_all_results(self) -> list[Tuple[str, Any]]: function convert_nonserializable_objects (line 563) | def convert_nonserializable_objects(obj): function dump_obj (line 592) | def dump_obj(obj) -> list[dict[str, Any]]: function dump_collector (line 606) | def dump_collector(collector: SearchResultsCollector) -> list[dict[str, ... function num_tokens (line 637) | def num_tokens(text, model="gpt-4o"): class CombinedMeta (line 647) | class CombinedMeta(AsyncSyncMeta, ABCMeta): function yield_sse_event (line 651) | async def yield_sse_event(event_name: str, payload: dict, chunk_size=1024): class SSEFormatter (line 675) | class SSEFormatter: method yield_citation_event (line 682) | async def yield_citation_event( method yield_final_answer_event (line 708) | async def yield_final_answer_event( method yield_message_event (line 717) | async def yield_message_event(text_segment, msg_id=None): method yield_thinking_event (line 738) | async def yield_thinking_event(text_segment, thinking_id=None): method yield_done_event (line 759) | def yield_done_event(): method yield_error_event (line 763) | async def yield_error_event(error_message, error_id=None): method yield_tool_call_event (line 774) | async def yield_tool_call_event(tool_call_data): method yield_search_results_event (line 785) | async def yield_search_results_event(aggregated_results): method yield_tool_result_event (line 795) | async def yield_tool_result_event(tool_result_data): FILE: py/shared/utils/splitter/text.py class BaseSerialized (line 58) | class BaseSerialized(TypedDict): class SerializedConstructor (line 67) | class SerializedConstructor(BaseSerialized): class SerializedSecret (line 74) | class SerializedSecret(BaseSerialized): class SerializedNotImplemented (line 80) | class SerializedNotImplemented(BaseSerialized): function try_neq_default (line 87) | def try_neq_default(value: Any, key: str, model: BaseModel) -> bool: class Serializable (line 104) | class Serializable(BaseModel, ABC): method is_lc_serializable (line 108) | def is_lc_serializable(cls) -> bool: method get_lc_namespace (line 113) | def get_lc_namespace(cls) -> list[str]: method lc_secrets (line 122) | def lc_secrets(self) -> dict[str, str]: method lc_attributes (line 130) | def lc_attributes(self) -> dict: method lc_id (line 139) | def lc_id(cls) -> list[str]: class Config (line 147) | class Config: method __repr_args__ (line 150) | def __repr_args__(self) -> Any: method __init__ (line 159) | def __init__(self, **kwargs: Any) -> None: method to_json (line 163) | def to_json( method to_json_not_implemented (line 231) | def to_json_not_implemented(self) -> SerializedNotImplemented: function _replace_secrets (line 235) | def _replace_secrets( function to_json_not_implemented (line 256) | def to_json_not_implemented(obj: object) -> SerializedNotImplemented: class SplitterDocument (line 290) | class SplitterDocument(Serializable): method __init__ (line 300) | def __init__(self, page_content: str, **kwargs: Any) -> None: method is_lc_serializable (line 305) | def is_lc_serializable(cls) -> bool: method get_lc_namespace (line 310) | def get_lc_namespace(cls) -> list[str]: class BaseDocumentTransformer (line 315) | class BaseDocumentTransformer(ABC): method transform_documents (line 351) | def transform_documents( method atransform_documents (line 363) | async def atransform_documents( function _make_spacy_pipe_for_splitting (line 380) | def _make_spacy_pipe_for_splitting( function _split_text_with_regex (line 400) | def _split_text_with_regex( class TextSplitter (line 421) | class TextSplitter(BaseDocumentTransformer, ABC): method __init__ (line 424) | def __init__( method split_text (line 458) | def split_text(self, text: str) -> list[str]: method create_documents (line 461) | def create_documents( method split_documents (line 483) | def split_documents( method _join_docs (line 493) | def _join_docs(self, docs: list[str], separator: str) -> Optional[str]: method _merge_splits (line 502) | def _merge_splits( method from_huggingface_tokenizer (line 549) | def from_huggingface_tokenizer( method from_tiktoken_encoder (line 572) | def from_tiktoken_encoder( method transform_documents (line 613) | def transform_documents( class CharacterTextSplitter (line 620) | class CharacterTextSplitter(TextSplitter): method __init__ (line 625) | def __init__( method split_text (line 636) | def split_text(self, text: str) -> list[str]: class LineType (line 649) | class LineType(TypedDict): class HeaderType (line 656) | class HeaderType(TypedDict): class MarkdownHeaderTextSplitter (line 664) | class MarkdownHeaderTextSplitter: method __init__ (line 667) | def __init__( method aggregate_lines_to_chunks (line 690) | def aggregate_lines_to_chunks( method split_text (line 737) | def split_text(self, text: str) -> list[SplitterDocument]: class ElementType (line 868) | class ElementType(TypedDict): class HTMLHeaderTextSplitter (line 877) | class HTMLHeaderTextSplitter: method __init__ (line 883) | def __init__( method aggregate_elements_to_chunks (line 901) | def aggregate_elements_to_chunks( method split_text_from_url (line 932) | def split_text_from_url(self, url: str) -> list[SplitterDocument]: method split_text (line 941) | def split_text(self, text: str) -> list[SplitterDocument]: method split_text_from_file (line 949) | def split_text_from_file(self, file: Any) -> list[SplitterDocument]: class Tokenizer (line 1039) | class Tokenizer: function split_text_on_tokens (line 1052) | def split_text_on_tokens(*, text: str, tokenizer: Tokenizer) -> list[str]: class TokenTextSplitter (line 1069) | class TokenTextSplitter(TextSplitter): method __init__ (line 1072) | def __init__( method split_text (line 1099) | def split_text(self, text: str) -> list[str]: class SentenceTransformersTokenTextSplitter (line 1117) | class SentenceTransformersTokenTextSplitter(TextSplitter): method __init__ (line 1120) | def __init__( method _initialize_chunk_configuration (line 1146) | def _initialize_chunk_configuration( method split_text (line 1164) | def split_text(self, text: str) -> list[str]: method count_tokens (line 1177) | def count_tokens(self, *, text: str) -> int: method _encode (line 1182) | def _encode(self, text: str) -> list[int]: class Language (line 1191) | class Language(str, Enum): class RecursiveCharacterTextSplitter (line 1219) | class RecursiveCharacterTextSplitter(TextSplitter): method __init__ (line 1225) | def __init__( method _split_text (line 1246) | def _split_text(self, text: str, separators: list[str]) -> list[str]: method split_text (line 1288) | def split_text(self, text: str) -> list[str]: method from_language (line 1292) | def from_language( method get_separators_for_language (line 1299) | def get_separators_for_language(language: Language) -> list[str]: class NLTKTextSplitter (line 1765) | class NLTKTextSplitter(TextSplitter): method __init__ (line 1768) | def __init__( method split_text (line 1783) | def split_text(self, text: str) -> list[str]: class SpacyTextSplitter (line 1790) | class SpacyTextSplitter(TextSplitter): method __init__ (line 1799) | def __init__( method split_text (line 1813) | def split_text(self, text: str) -> list[str]: class KonlpyTextSplitter (line 1819) | class KonlpyTextSplitter(TextSplitter): method __init__ (line 1825) | def __init__( method split_text (line 1842) | def split_text(self, text: str) -> list[str]: class PythonCodeTextSplitter (line 1849) | class PythonCodeTextSplitter(RecursiveCharacterTextSplitter): method __init__ (line 1852) | def __init__(self, **kwargs: Any) -> None: class MarkdownTextSplitter (line 1858) | class MarkdownTextSplitter(RecursiveCharacterTextSplitter): method __init__ (line 1861) | def __init__(self, **kwargs: Any) -> None: class LatexTextSplitter (line 1867) | class LatexTextSplitter(RecursiveCharacterTextSplitter): method __init__ (line 1870) | def __init__(self, **kwargs: Any) -> None: class RecursiveJsonSplitter (line 1876) | class RecursiveJsonSplitter: method __init__ (line 1877) | def __init__( method _json_size (line 1889) | def _json_size(data: dict) -> int: method _set_nested_dict (line 1894) | def _set_nested_dict(d: dict, path: list[str], value: Any) -> None: method _list_to_dict_preprocessing (line 1900) | def _list_to_dict_preprocessing(self, data: Any) -> Any: method _json_split (line 1916) | def _json_split( method split_json (line 1951) | def split_json( method split_text (line 1970) | def split_text( method create_documents (line 1982) | def create_documents( FILE: py/tests/integration/conftest.py class RetryableR2RAsyncClient (line 11) | class RetryableR2RAsyncClient(R2RAsyncClient): method _make_request (line 14) | async def _make_request(self, method, endpoint, version="v3", **kwargs): class RetryableR2RClient (line 36) | class RetryableR2RClient(R2RClient): method _make_request (line 39) | def _make_request(self, method, endpoint, version="v3", **kwargs): class TestConfig (line 63) | class TestConfig: method __init__ (line 64) | def __init__(self): function config (line 75) | def config() -> TestConfig: function client (line 80) | async def client(config) -> AsyncGenerator[R2RClient, None]: function mutable_client (line 86) | def mutable_client(config) -> R2RClient: function aclient (line 92) | async def aclient(config) -> AsyncGenerator[R2RAsyncClient, None]: function superuser_client (line 98) | async def superuser_client( function test_document (line 108) | def test_document(client: R2RClient): function test_collection (line 125) | def test_collection(client: R2RClient, test_document): FILE: py/tests/integration/test_agent.py function test_agent_basic_response (line 5) | def test_agent_basic_response(client, test_collection): function test_agent_conversation_memory (line 14) | def test_agent_conversation_memory(client, test_collection): function test_agent_rag_tool_usage (line 35) | def test_agent_rag_tool_usage(client, test_collection): function test_agent_rag_tool_usage2 (line 56) | def test_agent_rag_tool_usage2(client, test_collection): function test_research_agent_client (line 112) | def test_research_agent_client(client): function test_agent_respects_max_tokens (line 122) | def test_agent_respects_max_tokens(client, test_collection): function test_agent_model_selection (line 142) | def test_agent_model_selection(client, test_collection): function test_agent_response_timing (line 159) | def test_agent_response_timing(client, test_collection): function test_agent_handles_large_context (line 173) | def test_agent_handles_large_context(client): FILE: py/tests/integration/test_base.py class BaseTest (line 6) | class BaseTest: method cleanup_resource (line 10) | async def cleanup_resource(cleanup_func, FILE: py/tests/integration/test_chunks.py class AsyncR2RTestClient (line 11) | class AsyncR2RTestClient: method __init__ (line 14) | def __init__(self, base_url: str = "http://localhost:7272"): method create_document (line 17) | async def create_document(self, method delete_document (line 24) | async def delete_document(self, doc_id: str): method list_chunks (line 27) | async def list_chunks(self, doc_id: str): method retrieve_chunk (line 31) | async def retrieve_chunk(self, chunk_id: str): method update_chunk (line 35) | async def update_chunk(self, method delete_chunk (line 46) | async def delete_chunk(self, chunk_id: str): method search_chunks (line 50) | async def search_chunks(self, query: str, limit: int = 5): method register_user (line 55) | async def register_user(self, email: str, password: str): method login_user (line 58) | async def login_user(self, email: str, password: str): method logout_user (line 61) | async def logout_user(self): function test_client (line 66) | async def test_client() -> AsyncGenerator[AsyncR2RTestClient, None]: function test_document (line 72) | async def test_document( class TestChunks (line 87) | class TestChunks: method test_create_and_list_chunks (line 90) | async def test_create_and_list_chunks(self, method test_retrieve_chunk (line 104) | async def test_retrieve_chunk(self, test_client: AsyncR2RTestClient, method test_update_chunk (line 115) | async def test_update_chunk(self, test_client: AsyncR2RTestClient, method test_delete_chunk (line 127) | async def test_delete_chunk(self, test_client: AsyncR2RTestClient, method test_search_chunks (line 142) | async def test_search_chunks(self, test_client: AsyncR2RTestClient, method test_unauthorized_chunk_access (line 159) | async def test_unauthorized_chunk_access(self, method test_list_chunks_with_filters (line 177) | async def test_list_chunks_with_filters(self, method test_list_chunks_pagination (line 193) | async def test_list_chunks_pagination(self, method test_list_chunks_with_multiple_documents (line 236) | async def test_list_chunks_with_multiple_documents( function cleanup_documents (line 278) | async def cleanup_documents(test_client: AsyncR2RTestClient): FILE: py/tests/integration/test_collections.py function test_document_2 (line 9) | def test_document_2(client: R2RClient): function test_create_collection (line 24) | def test_create_collection(client: R2RClient): function test_list_collections (line 33) | def test_list_collections(client: R2RClient, test_collection): function test_retrieve_collection (line 38) | def test_retrieve_collection(client: R2RClient, test_collection): function test_update_collection (line 46) | def test_update_collection(client: R2RClient, test_collection): function test_add_document_to_collection (line 59) | def test_add_document_to_collection(client: R2RClient, test_collection, function test_list_documents_in_collection (line 70) | def test_list_documents_in_collection(client: R2RClient, test_collection, function test_remove_document_from_collection (line 80) | def test_remove_document_from_collection(client: R2RClient, test_collect... function test_remove_non_member_user_from_collection (line 91) | def test_remove_non_member_user_from_collection(mutable_client: R2RClient): function test_delete_collection (line 126) | def test_delete_collection(client: R2RClient): function test_add_user_to_non_existent_collection (line 138) | def test_add_user_to_non_existent_collection(mutable_client: R2RClient): function test_create_collection_without_name (line 157) | def test_create_collection_without_name(client: R2RClient): function test_filter_collections_by_non_existent_id (line 169) | def test_filter_collections_by_non_existent_id(client: R2RClient): function test_list_documents_in_empty_collection (line 177) | def test_list_documents_in_empty_collection(client: R2RClient): function test_remove_document_not_in_collection (line 187) | def test_remove_document_not_in_collection(client: R2RClient, test_docum... function test_add_non_existent_document_to_collection (line 202) | def test_add_non_existent_document_to_collection(client: R2RClient): function test_delete_non_existent_collection (line 217) | def test_delete_non_existent_collection(client: R2RClient): function test_retrieve_collection_by_name (line 226) | def test_retrieve_collection_by_name(client: R2RClient): FILE: py/tests/integration/test_collections_users_interaction.py function normal_user_client (line 16) | def normal_user_client(mutable_client: R2RClient): function another_normal_user_client (line 37) | def another_normal_user_client(config): function user_owned_collection (line 56) | def user_owned_collection(normal_user_client: R2RClient): function superuser_owned_collection (line 72) | def superuser_owned_collection(client: R2RClient): function test_non_member_cannot_view_collection (line 86) | def test_non_member_cannot_view_collection(normal_user_client, function test_collection_owner_can_view_collection (line 97) | def test_collection_owner_can_view_collection(normal_user_client: R2RCli... function test_collection_member_can_view_collection (line 106) | def test_collection_member_can_view_collection(client, function test_non_owner_member_cannot_edit_collection (line 134) | def test_non_owner_member_cannot_edit_collection( function test_non_owner_member_cannot_delete_collection (line 154) | def test_non_owner_member_cannot_delete_collection( function test_non_owner_member_cannot_add_other_users (line 173) | def test_non_owner_member_cannot_add_other_users( function test_owner_can_remove_member_from_collection (line 207) | def test_owner_can_remove_member_from_collection( function test_superuser_can_access_any_collection (line 230) | def test_superuser_can_access_any_collection(client: R2RClient, function test_unauthenticated_cannot_access_collections (line 245) | def test_unauthenticated_cannot_access_collections(config, function test_user_cannot_add_document_to_collection_they_cannot_edit (line 260) | def test_user_cannot_add_document_to_collection_they_cannot_edit( function test_user_cannot_remove_document_from_collection_they_cannot_edit (line 310) | def test_user_cannot_remove_document_from_collection_they_cannot_edit( function test_normal_user_cannot_make_another_user_superuser (line 346) | def test_normal_user_cannot_make_another_user_superuser( function test_normal_user_cannot_view_other_users_if_not_superuser (line 361) | def test_normal_user_cannot_view_other_users_if_not_superuser( function test_normal_user_cannot_update_other_users_details (line 370) | def test_normal_user_cannot_update_other_users_details( function test_owner_cannot_promote_member_to_superuser_via_collection (line 393) | def test_owner_cannot_promote_member_to_superuser_via_collection( function test_member_cannot_view_other_users_info (line 412) | def test_member_cannot_view_other_users_info( function test_unauthenticated_user_cannot_join_collection (line 432) | def test_unauthenticated_user_cannot_join_collection(config, function test_non_owner_cannot_remove_users_they_did_not_add (line 451) | def test_non_owner_cannot_remove_users_they_did_not_add( function test_owner_cannot_access_deleted_member_info_after_removal (line 471) | def test_owner_cannot_access_deleted_member_info_after_removal( function test_member_cannot_add_document_to_non_existent_collection (line 498) | def test_member_cannot_add_document_to_non_existent_collection( FILE: py/tests/integration/test_conversations.py function test_conversation (line 11) | def test_conversation(client: R2RClient): function test_create_conversation (line 20) | def test_create_conversation(client: R2RClient): function test_list_conversations (line 27) | def test_list_conversations(client: R2RClient, test_conversation): function test_retrieve_conversation (line 33) | def test_retrieve_conversation(client: R2RClient, test_conversation): function test_delete_conversation (line 42) | def test_delete_conversation(client: R2RClient): function test_add_message (line 54) | def test_add_message(client: R2RClient, test_conversation): function test_retrieve_non_existent_conversation (line 69) | def test_retrieve_non_existent_conversation(client: R2RClient): function test_delete_non_existent_conversation (line 77) | def test_delete_non_existent_conversation(client: R2RClient): function test_add_message_to_non_existent_conversation (line 85) | def test_add_message_to_non_existent_conversation(client: R2RClient): function test_update_message (line 98) | def test_update_message(client: R2RClient, test_conversation): function test_update_non_existent_message (line 130) | def test_update_non_existent_message(client: R2RClient, test_conversation): function test_add_message_with_empty_content (line 140) | def test_add_message_with_empty_content(client: R2RClient, test_conversa... function test_add_message_invalid_role (line 152) | def test_add_message_invalid_role(client: R2RClient, test_conversation): function test_add_message_to_deleted_conversation (line 163) | def test_add_message_to_deleted_conversation(client: R2RClient): function test_update_message_with_additional_metadata (line 179) | def test_update_message_with_additional_metadata(client: R2RClient, function test_new_conversation_gets_named_after_first_agent_interaction (line 223) | def test_new_conversation_gets_named_after_first_agent_interaction(clien... function test_existing_named_conversation_preserves_name_after_agent_interaction (line 262) | def test_existing_named_conversation_preserves_name_after_agent_interact... FILE: py/tests/integration/test_documents.py function cleanup_documents (line 10) | def cleanup_documents(client: R2RClient): function test_create_document_with_file (line 27) | def test_create_document_with_file(client: R2RClient, cleanup_documents): function test_create_document_with_raw_text (line 37) | def test_create_document_with_raw_text(client: R2RClient, cleanup_docume... function test_create_document_with_chunks (line 52) | def test_create_document_with_chunks(client: R2RClient, cleanup_documents): function test_create_document_different_modes (line 69) | def test_create_document_different_modes(client: R2RClient, cleanup_docu... function test_list_documents (line 89) | def test_list_documents(client: R2RClient, test_document): function test_retrieve_document (line 96) | def test_retrieve_document(client: R2RClient, test_document): function test_download_document (line 101) | def test_download_document(client: R2RClient, test_document): function test_delete_document (line 109) | def test_delete_document(client: R2RClient): function test_delete_document_by_filter (line 122) | def test_delete_document_by_filter(client: R2RClient): function test_list_document_collections (line 144) | def test_list_document_collections(client: R2RClient, test_document): function test_extract_document (line 154) | def test_extract_document(client: R2RClient, test_document): function test_list_entities (line 162) | def test_list_entities(client: R2RClient, test_document): function test_list_relationships (line 173) | def test_list_relationships(client: R2RClient, test_document): function test_search_documents (line 183) | def test_search_documents(client: R2RClient, test_document): function test_list_document_chunks (line 196) | def test_list_document_chunks(mutable_client: R2RClient, cleanup_documen... function test_search_documents_extended (line 210) | def test_search_documents_extended(client: R2RClient, cleanup_documents): function test_retrieve_document_not_found (line 228) | def test_retrieve_document_not_found(client): function test_delete_document_non_existent (line 235) | def test_delete_document_non_existent(client): function test_get_document_collections_non_superuser (line 244) | def test_get_document_collections_non_superuser(client): function test_access_document_not_owned (line 258) | def test_access_document_not_owned(client: R2RClient, cleanup_documents): function test_list_documents_with_pagination (line 277) | def test_list_documents_with_pagination(mutable_client: R2RClient, function test_ingest_invalid_chunks (line 294) | def test_ingest_invalid_chunks(client): function test_ingest_too_many_chunks (line 305) | def test_ingest_too_many_chunks(client: R2RClient): function test_chunk_size_and_overlap (line 313) | def test_chunk_size_and_overlap(client: R2RClient, cleanup_documents): function test_delete_by_complex_filter (line 355) | def test_delete_by_complex_filter(client: R2RClient, cleanup_documents): function test_search_documents_no_match (line 385) | def test_search_documents_no_match(client: R2RClient, cleanup_documents): function test_delete_by_workflow_metadata (line 415) | def test_delete_by_workflow_metadata(client: R2RClient, cleanup_documents): function test_delete_by_classification_metadata (line 496) | def test_delete_by_classification_metadata(client: R2RClient, function test_delete_by_version_metadata (line 560) | def test_delete_by_version_metadata(client: R2RClient, cleanup_documents): FILE: py/tests/integration/test_filters.py function setup_docs_with_collections (line 9) | def setup_docs_with_collections(client: R2RClient): function test_collection_id_eq_filter (line 60) | def test_collection_id_eq_filter(client: R2RClient, function test_collection_id_ne_filter (line 79) | def test_collection_id_ne_filter(client: R2RClient, function test_collection_id_in_filter (line 101) | def test_collection_id_in_filter(client: R2RClient, function test_collection_id_nin_filter (line 123) | def test_collection_id_nin_filter(client: R2RClient, function test_collections_id_contains_filter (line 145) | def test_collections_id_contains_filter(client: R2RClient, function test_collection_id_contains_multiple (line 166) | def test_collection_id_contains_multiple(client: R2RClient, function test_delete_by_collection_id_eq (line 188) | def test_delete_by_collection_id_eq(client: R2RClient, FILE: py/tests/integration/test_graphs.py function config (line 9) | def config(): function client (line 20) | def client(config): function test_collection (line 28) | def test_collection(client): function test_list_graphs (line 42) | def test_list_graphs(client: R2RClient): function test_create_and_get_graph (line 47) | def test_create_and_get_graph(client: R2RClient, test_collection): function test_update_graph (line 54) | def test_update_graph(client: R2RClient, test_collection): function test_list_entities (line 68) | def test_list_entities(client: R2RClient, test_collection): function test_create_and_get_entity (line 75) | def test_create_and_get_entity(client: R2RClient, test_collection): function test_list_relationships (line 92) | def test_list_relationships(client: R2RClient, test_collection): function test_create_and_get_relationship (line 99) | def test_create_and_get_relationship(client: R2RClient, test_collection): function test_list_communities (line 174) | def test_list_communities(client: R2RClient, test_collection): function test_create_and_get_community (line 181) | def test_create_and_get_community(client: R2RClient, test_collection): function test_update_community (line 200) | def test_update_community(client: R2RClient, test_collection): function test_pull_operation (line 225) | def test_pull_operation(client: R2RClient, test_collection): function test_error_handling (line 231) | def test_error_handling(client: R2RClient): FILE: py/tests/integration/test_indices.py function config (line 7) | def config(): function client (line 18) | def client(config): function test_list_indices (line 51) | def test_list_indices(client: R2RClient): function test_error_handling (line 91) | def test_error_handling(client: R2RClient): FILE: py/tests/integration/test_ingestion.py function file_ingestion (line 33) | def file_ingestion( function config (line 130) | def config(): function client (line 141) | def client(config): function test_file_type_ingestion (line 184) | def test_file_type_ingestion(client: R2RClient, file_type: str, function test_hires_ingestion (line 208) | def test_hires_ingestion(client: R2RClient, file_type: str, file_path: s... function test_ocr_ingestion (line 242) | def test_ocr_ingestion(client: R2RClient, file_type: str, file_path: str): function test_custom_ingestion_config (line 253) | def test_custom_ingestion_config(client: R2RClient): function test_raw_text_ingestion (line 280) | def test_raw_text_ingestion(client: R2RClient): function test_chunks_ingestion (line 307) | def test_chunks_ingestion(client: R2RClient): function test_metadata_handling (line 320) | def test_metadata_handling(client: R2RClient): function test_img_ingestion (line 351) | def test_img_ingestion(client: R2RClient): function test_metadata_title_handling (line 378) | def test_metadata_title_handling(client: R2RClient): FILE: py/tests/integration/test_retrieval.py function config (line 10) | def config(): function client (line 21) | def client(config): function test_search_basic_mode (line 28) | def test_search_basic_mode(client: R2RClient): function test_search_advanced_mode_with_filters (line 34) | def test_search_advanced_mode_with_filters(client: R2RClient): function test_search_custom_mode (line 47) | def test_search_custom_mode(client: R2RClient): function test_rag_query (line 59) | def test_rag_query(client: R2RClient): function test_rag_with_filter (line 74) | def test_rag_with_filter(client: R2RClient): function test_rag_stream_query (line 102) | def test_rag_stream_query(client: R2RClient): function test_agent_query (line 130) | def test_agent_query(client: R2RClient): function test_agent_query_stream (line 147) | def test_agent_query_stream(client: R2RClient): function test_completion (line 173) | def test_completion(client: R2RClient): function test_embedding (line 203) | def test_embedding(client: R2RClient): function test_error_handling (line 209) | def test_error_handling(client: R2RClient): function test_no_results_scenario (line 219) | def test_no_results_scenario(client: R2RClient): function test_pagination_limit_one (line 233) | def test_pagination_limit_one(client: R2RClient): function test_pagination_offset (line 248) | def test_pagination_offset(client: R2RClient): function test_rag_task_prompt (line 271) | def test_rag_task_prompt(client: R2RClient): function test_agent_conversation_id (line 292) | def test_agent_conversation_id(client: R2RClient): function test_complex_filters_and_fulltext (line 327) | def test_complex_filters_and_fulltext(client: R2RClient, test_collection): function test_complex_nested_filters (line 440) | def test_complex_nested_filters(client: R2RClient, test_collection): function test_filters_no_match (line 492) | def test_filters_no_match(client: R2RClient): function test_pagination_extremes (line 506) | def test_pagination_extremes(client: R2RClient): function test_full_text_stopwords (line 524) | def test_full_text_stopwords(client: R2RClient): function test_full_text_non_ascii (line 538) | def test_full_text_non_ascii(client: R2RClient): function test_missing_fields (line 552) | def test_missing_fields(client: R2RClient): function test_rag_with_large_context (line 567) | def test_rag_with_large_context(client: R2RClient): function test_agent_long_conversation (line 585) | def test_agent_long_conversation(client: R2RClient): function test_filter_by_document_type (line 638) | def test_filter_by_document_type(client: R2RClient): function test_search_hyde_mode (line 656) | def test_search_hyde_mode(client: R2RClient): function test_search_rag_fusion_mode (line 705) | def test_search_rag_fusion_mode(client: R2RClient): function test_rag_fusion_mode_with_subqueries (line 740) | def test_rag_fusion_mode_with_subqueries(client: R2RClient): function test_collection_id_filters (line 762) | def test_collection_id_filters(client: R2RClient): FILE: py/tests/integration/test_retrieval_advanced.py function test_semantic_search_with_near_duplicates (line 7) | def test_semantic_search_with_near_duplicates(client: R2RClient): function test_semantic_search_multilingual (line 42) | def test_semantic_search_multilingual(client: R2RClient): function test_rag_context_window_limits (line 122) | def test_rag_context_window_limits(client: R2RClient): function _extract_sources (line 254) | def _extract_sources(content: str) -> list[str]: FILE: py/tests/integration/test_users.py function config (line 9) | def config(): function client (line 21) | def client(config): function superuser_login (line 26) | def superuser_login(client: R2RClient, config): function register_and_return_user_id (line 34) | def register_and_return_user_id(client: R2RClient, email: str, function test_register_user (line 39) | def test_register_user(client: R2RClient): function test_user_refresh_token (line 47) | def test_user_refresh_token(client: R2RClient): function test_change_password (line 59) | def test_change_password(client: R2RClient): function test_request_and_reset_password (line 85) | def test_request_and_reset_password(client: R2RClient): function test_users_list (line 111) | def test_users_list(client: R2RClient, superuser_login): function test_get_current_user (line 118) | def test_get_current_user(client: R2RClient, superuser_login): function test_get_user_by_id (line 124) | def test_get_user_by_id(client: R2RClient, superuser_login): function test_update_user (line 134) | def test_update_user(client: R2RClient, superuser_login): function test_user_collections (line 145) | def test_user_collections(client: R2RClient, superuser_login, config): function test_add_remove_user_from_collection (line 156) | def test_add_remove_user_from_collection(client: R2RClient, superuser_lo... function test_delete_user (line 185) | def test_delete_user(client: R2RClient): function test_superuser_downgrade_permissions (line 205) | def test_superuser_downgrade_permissions(client: R2RClient, superuser_lo... function test_non_owner_delete_collection (line 240) | def test_non_owner_delete_collection(client: R2RClient): function test_update_user_with_invalid_email (line 276) | def test_update_user_with_invalid_email(client: R2RClient, superuser_log... function test_update_user_email_already_exists (line 294) | def test_update_user_email_already_exists(client: R2RClient, superuser_l... function test_delete_user_with_incorrect_password (line 316) | def test_delete_user_with_incorrect_password(client: R2RClient): function test_login_with_incorrect_password (line 335) | def test_login_with_incorrect_password(client: R2RClient): function test_refresh_token (line 348) | def test_refresh_token(client: R2RClient): function test_verification_with_invalid_code (line 361) | def test_verification_with_invalid_code(client: R2RClient): function test_password_reset_with_invalid_token (line 379) | def test_password_reset_with_invalid_token(client: R2RClient): function user_with_api_key (line 397) | def user_with_api_key(client: R2RClient): function test_api_key_lifecycle (line 419) | def test_api_key_lifecycle(client: R2RClient): function test_api_key_authentication (line 457) | def test_api_key_authentication(client: R2RClient, user_with_api_key): function test_api_key_permissions (line 470) | def test_api_key_permissions(client: R2RClient, user_with_api_key): function test_invalid_api_key (line 485) | def test_invalid_api_key(client: R2RClient): function test_multiple_api_keys (line 496) | def test_multiple_api_keys(client: R2RClient): function test_update_user_limits_overrides (line 523) | def test_update_user_limits_overrides(client: R2RClient): function test_collection_ownership_filtering (line 555) | def test_collection_ownership_filtering(client: R2RClient): function test_superuser_collection_ownership_filtering (line 637) | def test_superuser_collection_ownership_filtering(client: R2RClient, sup... function test_collection_filter_invalid_parameters (line 666) | def test_collection_filter_invalid_parameters(client: R2RClient): function test_document_ownership_filtering (line 683) | def test_document_ownership_filtering(client: R2RClient): function test_document_filter_invalid_parameters (line 793) | def test_document_filter_invalid_parameters(client: R2RClient): FILE: py/tests/scaling/loadTester.py class Metrics (line 40) | class Metrics: class LoadTester (line 47) | class LoadTester: method __init__ (line 49) | def __init__(self, base_url: str): method safe_call (line 57) | async def safe_call(self, coro, timeout, operation_desc="operation"): method register_login_ingest_user (line 70) | async def register_login_ingest_user(self, user_email: str, password: ... method setup_users (line 111) | async def setup_users(self): method run_user_queries (line 128) | async def run_user_queries(self, user: dict): method calculate_statistics (line 176) | def calculate_statistics(self): method run_load_test (line 205) | async def run_load_test(self): function main (line 243) | def main(): FILE: py/tests/unit/agent/test_agent.py function test_streaming_agent_functionality (line 32) | async def test_streaming_agent_functionality(): function test_agent_handles_multiple_messages (line 80) | async def test_agent_handles_multiple_messages(): function test_agent_event_format (line 149) | async def test_agent_event_format(): function test_final_answer_event_format (line 209) | async def test_final_answer_event_format(): function test_conversation_message_format (line 259) | async def test_conversation_message_format(): FILE: py/tests/unit/agent/test_agent_citations.py class MockLLMProvider (line 35) | class MockLLMProvider: method __init__ (line 38) | def __init__(self, response_content=None, citations=None): method aget_completion (line 42) | async def aget_completion(self, messages, generation_config): method aget_completion_stream (line 55) | async def aget_completion_stream(self, messages, generation_config): class MockPromptsHandler (line 79) | class MockPromptsHandler: method get_cached_prompt (line 82) | async def get_cached_prompt(self, prompt_key, inputs=None, *args, **kw... class MockDatabaseProvider (line 87) | class MockDatabaseProvider: method __init__ (line 90) | def __init__(self): method acreate_conversation (line 94) | async def acreate_conversation(self, *args, **kwargs): method aupdate_conversation (line 97) | async def aupdate_conversation(self, *args, **kwargs): method acreate_message (line 100) | async def acreate_message(self, *args, **kwargs): class MockSearchResultsCollector (line 104) | class MockSearchResultsCollector: method __init__ (line 107) | def __init__(self, results=None): method find_by_short_id (line 110) | def find_by_short_id(self, short_id): class MockR2RStreamingAgent (line 119) | class MockR2RStreamingAgent(R2RStreamingAgent): method _register_tools (line 126) | def _register_tools(self): method _setup (line 130) | async def _setup(self, system_instruction=None, *args, **kwargs): method _format_sse_event (line 140) | def _format_sse_event(self, event_type, data): method arun (line 144) | async def arun( function mock_streaming_agent (line 252) | def mock_streaming_agent(): function collect_stream_output (line 291) | async def collect_stream_output(stream): function test_extract_citations_from_response (line 299) | def test_extract_citations_from_response(): function test_streaming_agent_citation_extraction (line 310) | async def test_streaming_agent_citation_extraction(mock_streaming_agent): function test_citation_tracker_during_streaming (line 336) | async def test_citation_tracker_during_streaming(mock_streaming_agent): function test_final_answer_includes_consolidated_citations (line 355) | async def test_final_answer_includes_consolidated_citations(mock_streami... function test_conversation_message_includes_citation_metadata (line 385) | async def test_conversation_message_includes_citation_metadata(mock_stre... function test_multiple_citations_for_same_source (line 407) | async def test_multiple_citations_for_same_source(mock_streaming_agent): function test_citation_consolidation_logic (line 554) | async def test_citation_consolidation_logic(mock_streaming_agent): function test_citation_event_format (line 604) | async def test_citation_event_format(mock_streaming_agent): function test_final_answer_event_format (line 648) | async def test_final_answer_event_format(mock_streaming_agent): function test_overlapping_citation_handling (line 702) | async def test_overlapping_citation_handling(): function test_robustness_against_citation_variations (line 877) | async def test_robustness_against_citation_variations(mock_streaming_age... class TestCitationEdgeCases (line 907) | class TestCitationEdgeCases: method test_citation_extraction_cases (line 937) | def test_citation_extraction_cases(self, test_case): function test_citation_handling_with_empty_response (line 954) | async def test_citation_handling_with_empty_response(): function test_citation_sanitization (line 1054) | async def test_citation_sanitization(): function test_citation_tracking_state_persistence (line 1075) | async def test_citation_tracking_state_persistence(): function test_citation_span_uniqueness (line 1097) | def test_citation_span_uniqueness(): function test_citation_with_punctuation (line 1113) | def test_citation_with_punctuation(): function test_citation_extraction_with_invalid_formats (line 1125) | def test_citation_extraction_with_invalid_formats(): FILE: py/tests/unit/agent/test_agent_citations_old.py class MockLLMProvider (line 35) | class MockLLMProvider: method __init__ (line 38) | def __init__(self, response_content=None, citations=None): method aget_completion (line 42) | async def aget_completion(self, messages, generation_config): method aget_completion_stream (line 55) | async def aget_completion_stream(self, messages, generation_config): class MockPromptsHandler (line 79) | class MockPromptsHandler: method get_cached_prompt (line 82) | async def get_cached_prompt(self, prompt_key, inputs=None, *args, **kw... class MockDatabaseProvider (line 87) | class MockDatabaseProvider: method __init__ (line 90) | def __init__(self): method acreate_conversation (line 94) | async def acreate_conversation(self, *args, **kwargs): method aupdate_conversation (line 97) | async def aupdate_conversation(self, *args, **kwargs): method acreate_message (line 100) | async def acreate_message(self, *args, **kwargs): class MockSearchResultsCollector (line 104) | class MockSearchResultsCollector: method __init__ (line 107) | def __init__(self, results=None): method find_by_short_id (line 110) | def find_by_short_id(self, short_id): class MockR2RStreamingAgent (line 119) | class MockR2RStreamingAgent(R2RStreamingAgent): method _register_tools (line 126) | def _register_tools(self): method _setup (line 130) | async def _setup(self, system_instruction=None, *args, **kwargs): method _format_sse_event (line 140) | def _format_sse_event(self, event_type, data): method arun (line 144) | async def arun( function mock_streaming_agent (line 252) | def mock_streaming_agent(): function collect_stream_output (line 291) | async def collect_stream_output(stream): function test_extract_citations_from_response (line 299) | def test_extract_citations_from_response(): function test_streaming_agent_citation_extraction (line 310) | async def test_streaming_agent_citation_extraction(mock_streaming_agent): function test_citation_tracker_during_streaming (line 336) | async def test_citation_tracker_during_streaming(mock_streaming_agent): function test_final_answer_includes_consolidated_citations (line 355) | async def test_final_answer_includes_consolidated_citations(mock_streami... function test_conversation_message_includes_citation_metadata (line 385) | async def test_conversation_message_includes_citation_metadata(mock_stre... function test_multiple_citations_for_same_source (line 407) | async def test_multiple_citations_for_same_source(mock_streaming_agent): function test_citation_consolidation_logic (line 554) | async def test_citation_consolidation_logic(mock_streaming_agent): function test_citation_event_format (line 604) | async def test_citation_event_format(mock_streaming_agent): function test_final_answer_event_format (line 648) | async def test_final_answer_event_format(mock_streaming_agent): function test_overlapping_citation_handling (line 702) | async def test_overlapping_citation_handling(): function test_robustness_against_citation_variations (line 877) | async def test_robustness_against_citation_variations(mock_streaming_age... class TestCitationEdgeCases (line 907) | class TestCitationEdgeCases: method test_citation_extraction_cases (line 937) | def test_citation_extraction_cases(self, test_case): function test_citation_handling_with_empty_response (line 954) | async def test_citation_handling_with_empty_response(): function test_citation_sanitization (line 1054) | async def test_citation_sanitization(): function test_citation_tracking_state_persistence (line 1075) | async def test_citation_tracking_state_persistence(): function test_citation_span_uniqueness (line 1097) | def test_citation_span_uniqueness(): function test_citation_with_punctuation (line 1113) | def test_citation_with_punctuation(): function test_citation_extraction_with_invalid_formats (line 1125) | def test_citation_extraction_with_invalid_formats(): FILE: py/tests/unit/agent/test_agent_old.py function test_streaming_agent_functionality (line 32) | async def test_streaming_agent_functionality(): function test_agent_handles_multiple_messages (line 80) | async def test_agent_handles_multiple_messages(): function test_agent_event_format (line 149) | async def test_agent_event_format(): function test_final_answer_event_format (line 209) | async def test_final_answer_event_format(): function test_conversation_message_format (line 259) | async def test_conversation_message_format(): FILE: py/tests/unit/agent/test_streaming_agent.py class MockLLMProvider (line 10) | class MockLLMProvider: method __init__ (line 12) | def __init__(self, response_content="LLM generated response about Aris... method setup_stream (line 19) | def setup_stream(self, chunks): method aget_completion_stream (line 23) | async def aget_completion_stream(self, messages, system_prompt=None): class CitationTracker (line 29) | class CitationTracker: method __init__ (line 31) | def __init__(self): method is_new_span (line 34) | def is_new_span(self, citation_id, start, end): class MockR2RStreamingAgent (line 43) | class MockR2RStreamingAgent: method __init__ (line 45) | def __init__(self, llm_provider=None, response_chunks=None): method emit_event (line 55) | def emit_event(self, event): method extract_citations (line 59) | async def extract_citations(self, text): method emit_citation_events (line 69) | async def emit_citation_events(self, text, accumulated_text=""): method process_streamed_response (line 96) | async def process_streamed_response(self, messages, system_prompt=None): function mock_llm_provider (line 121) | def mock_llm_provider(): function mock_agent (line 127) | def mock_agent(mock_llm_provider): class TestStreamingAgent (line 132) | class TestStreamingAgent: method test_basic_streaming (line 136) | async def test_basic_streaming(self, mock_agent): method test_citation_extraction_and_events (line 155) | async def test_citation_extraction_and_events(self, mock_agent): method test_citation_tracking (line 189) | async def test_citation_tracking(self, mock_agent): method test_citation_sanitization (line 216) | async def test_citation_sanitization(self, mock_agent): method test_consolidate_citations (line 294) | def test_consolidate_citations(self): FILE: py/tests/unit/app/test_config.py function base_config (line 19) | def base_config(): function config_dir (line 27) | def config_dir(): function all_config_files (line 33) | def all_config_files(config_dir): function all_configs (line 39) | def all_configs(all_config_files): function full_config (line 49) | def full_config(all_configs): function all_merged_configs (line 55) | def all_merged_configs(base_config, all_configs): function merged_config (line 64) | def merged_config(base_config, full_config): function test_base_config_loading (line 74) | def test_base_config_loading(base_config): function test_full_config_override (line 93) | def test_full_config_override(full_config): function test_nested_config_preservation (line 110) | def test_nested_config_preservation(merged_config): function test_new_values_in_override (line 117) | def test_new_values_in_override(merged_config): function test_config_type_consistency (line 139) | def test_config_type_consistency(merged_config): function get_config_files (line 159) | def get_config_files(): function test_config_required_keys (line 166) | def test_config_required_keys(config_file): function test_serialization_roundtrip (line 207) | def test_serialization_roundtrip(merged_config): function test_all_merged_configs (line 224) | def test_all_merged_configs(base_config, all_merged_configs): function test_all_config_overrides (line 236) | def test_all_config_overrides(all_configs): FILE: py/tests/unit/app/test_routes.py function mock_providers (line 47) | def mock_providers(): function mock_services (line 92) | def mock_services(): function mock_config (line 104) | def mock_config(): function router (line 148) | def router(request, mock_providers, mock_services, mock_config): function test_all_routes_have_base_endpoint_decorator (line 153) | def test_all_routes_have_base_endpoint_decorator(router): function test_all_routes_have_proper_return_type_hints (line 164) | def test_all_routes_have_proper_return_type_hints(router): function test_all_routes_have_rate_limiting (line 186) | def test_all_routes_have_rate_limiting(router): FILE: py/tests/unit/conftest.py function db_provider (line 28) | async def db_provider(): function crypto_provider (line 54) | def crypto_provider(): function chunks_handler (line 60) | async def chunks_handler(db_provider): function collections_handler (line 77) | async def collections_handler(db_provider): function conversations_handler (line 92) | async def conversations_handler(db_provider): function documents_handler (line 102) | async def documents_handler(db_provider): function graphs_handler (line 117) | async def graphs_handler(db_provider): function limits_handler (line 138) | async def limits_handler(db_provider): function users_handler (line 156) | async def users_handler(db_provider, crypto_provider): function prompt_handler (line 177) | async def prompt_handler(db_provider): function graphs_handler (line 197) | async def graphs_handler(db_provider): class MockLLMProvider (line 231) | class MockLLMProvider: method __init__ (line 234) | def __init__(self, response_content=None, citations=None): method aget_completion (line 238) | async def aget_completion(self, messages, generation_config): method aget_completion_stream (line 251) | async def aget_completion_stream(self, messages, generation_config): class MockPromptsHandler (line 275) | class MockPromptsHandler: method get_cached_prompt (line 278) | async def get_cached_prompt(self, prompt_key, inputs=None, *args, **kw... class MockDatabaseProvider (line 283) | class MockDatabaseProvider: method __init__ (line 286) | def __init__(self): method acreate_conversation (line 290) | async def acreate_conversation(self, *args, **kwargs): method aupdate_conversation (line 293) | async def aupdate_conversation(self, *args, **kwargs): method acreate_message (line 296) | async def acreate_message(self, *args, **kwargs): class MockSearchResultsCollector (line 300) | class MockSearchResultsCollector: method __init__ (line 303) | def __init__(self, results=None): method find_by_short_id (line 306) | def find_by_short_id(self, short_id): class MockR2RStreamingAgent (line 315) | class MockR2RStreamingAgent(R2RStreamingAgent): method _register_tools (line 322) | def _register_tools(self): method _setup (line 326) | async def _setup(self, system_instruction=None, *args, **kwargs): method _format_sse_event (line 336) | def _format_sse_event(self, event_type, data): method arun (line 340) | async def arun( function mock_streaming_agent (line 448) | def mock_streaming_agent(): function collect_stream_output (line 487) | async def collect_stream_output(stream): FILE: py/tests/unit/database/test_collections.py function test_create_collection (line 10) | async def test_create_collection(collections_handler): function test_create_collection_default_name (line 24) | async def test_create_collection_default_name(collections_handler): function test_update_collection (line 34) | async def test_update_collection(collections_handler): function test_update_collection_no_fields (line 52) | async def test_update_collection_no_fields(collections_handler): function test_delete_collection_relational (line 64) | async def test_delete_collection_relational(collections_handler): function test_collection_exists (line 80) | async def test_collection_exists(collections_handler): function test_documents_in_collection (line 87) | async def test_documents_in_collection(collections_handler, db_provider): function test_get_collections_overview (line 114) | async def test_get_collections_overview(collections_handler, db_provider): function test_assign_document_to_collection_relational (line 130) | async def test_assign_document_to_collection_relational( function test_remove_document_from_collection_relational (line 158) | async def test_remove_document_from_collection_relational( function test_delete_nonexistent_collection (line 185) | async def test_delete_nonexistent_collection(collections_handler): FILE: py/tests/unit/database/test_conversations.py function test_create_conversation (line 13) | async def test_create_conversation(conversations_handler): function test_create_conversation_with_user_and_name (line 21) | async def test_create_conversation_with_user_and_name(conversations_hand... function test_add_message (line 33) | async def test_add_message(conversations_handler): function test_add_message_with_parent (line 45) | async def test_add_message_with_parent(conversations_handler): function test_edit_message (line 62) | async def test_edit_message(conversations_handler): function test_update_message_metadata (line 77) | async def test_update_message_metadata(conversations_handler): function test_get_conversation (line 97) | async def test_get_conversation(conversations_handler): function test_delete_conversation (line 114) | async def test_delete_conversation(conversations_handler): FILE: py/tests/unit/database/test_graphs.py class StoreType (line 9) | class StoreType(str, Enum): function test_create_graph (line 15) | async def test_create_graph(graphs_handler): function test_add_entities_and_relationships (line 26) | async def test_add_entities_and_relationships(graphs_handler): function test_delete_entities_and_relationships (line 81) | async def test_delete_entities_and_relationships(graphs_handler): function test_communities (line 135) | async def test_communities(graphs_handler): function test_create_graph_defaults (line 200) | async def test_create_graph_defaults(graphs_handler): function test_update_graph (line 240) | async def test_update_graph(graphs_handler): function test_bulk_entities (line 265) | async def test_bulk_entities(graphs_handler): function test_relationship_filtering (line 308) | async def test_relationship_filtering(graphs_handler): function test_delete_all_entities (line 363) | async def test_delete_all_entities(graphs_handler): function test_delete_all_relationships (line 387) | async def test_delete_all_relationships(graphs_handler): function test_error_handling_invalid_graph_id (line 419) | async def test_error_handling_invalid_graph_id(graphs_handler): function test_filter_by_collection_ids_in_entities (line 434) | async def test_filter_by_collection_ids_in_entities(graphs_handler): FILE: py/tests/unit/database/test_limits.py function test_log_request_and_count (line 13) | async def test_log_request_and_count(limits_handler): function test_global_limit (line 78) | async def test_global_limit(limits_handler): function test_monthly_limit (line 127) | async def test_monthly_limit(limits_handler): function test_user_level_override (line 177) | async def test_user_level_override(limits_handler): function test_determine_effective_limits (line 245) | async def test_determine_effective_limits(limits_handler): function test_separate_route_usage_is_isolated (line 305) | async def test_separate_route_usage_is_isolated(limits_handler): function test_route_specific_monthly_usage (line 413) | async def test_route_specific_monthly_usage(limits_handler): FILE: py/tests/unit/document/test_chunks.py class AsyncR2RTestClient (line 11) | class AsyncR2RTestClient: method __init__ (line 14) | def __init__(self, base_url: str = "http://localhost:7272"): method create_document (line 17) | async def create_document(self, method delete_document (line 24) | async def delete_document(self, doc_id: str) -> None: method list_chunks (line 27) | async def list_chunks(self, doc_id: str): method retrieve_chunk (line 31) | async def retrieve_chunk(self, chunk_id: str): method update_chunk (line 35) | async def update_chunk(self, method delete_chunk (line 46) | async def delete_chunk(self, chunk_id: str): method search_chunks (line 50) | async def search_chunks(self, query: str, limit: int = 5): method register_user (line 56) | async def register_user(self, email: str, password: str): method login_user (line 59) | async def login_user(self, email: str, password: str): method logout_user (line 62) | async def logout_user(self): function test_client (line 67) | async def test_client() -> AsyncGenerator[AsyncR2RTestClient, None]: function test_document (line 73) | async def test_document( class TestChunks (line 88) | class TestChunks: method test_create_and_list_chunks (line 91) | async def test_create_and_list_chunks(self, method test_retrieve_chunk (line 106) | async def test_retrieve_chunk(self, test_client: AsyncR2RTestClient, method test_update_chunk (line 117) | async def test_update_chunk(self, test_client: AsyncR2RTestClient, method test_delete_chunk (line 129) | async def test_delete_chunk(self, test_client: AsyncR2RTestClient, method test_search_chunks (line 144) | async def test_search_chunks(self, test_client: AsyncR2RTestClient): method test_unauthorized_chunk_access (line 162) | async def test_unauthorized_chunk_access(self, method test_list_chunks_with_filters (line 180) | async def test_list_chunks_with_filters(self, method test_list_chunks_pagination (line 219) | async def test_list_chunks_pagination(self, method test_list_chunks_with_multiple_documents (line 262) | async def test_list_chunks_with_multiple_documents( FILE: py/tests/unit/document/test_document_processing.py function sample_document (line 14) | def sample_document(): function mock_document_handler (line 43) | def mock_document_handler(): function test_document_chunking (line 54) | async def test_document_chunking(mock_document_handler, sample_document): function test_document_metadata_extraction (line 99) | async def test_document_metadata_extraction(mock_document_handler, sampl... function test_document_embedding_generation (line 130) | async def test_document_embedding_generation(mock_document_handler, samp... function test_document_citation_processing (line 162) | async def test_document_citation_processing(mock_document_handler, sampl... function test_document_text_preprocessing (line 203) | async def test_document_text_preprocessing(mock_document_handler): FILE: py/tests/unit/document/test_documents.py function make_db_entry (line 14) | def make_db_entry(doc: DocumentResponse): function test_upsert_documents_overview_insert (line 52) | async def test_upsert_documents_overview_insert(documents_handler): function test_upsert_documents_overview_update (line 87) | async def test_upsert_documents_overview_update(documents_handler): function test_delete_document (line 124) | async def test_delete_document(documents_handler): FILE: py/tests/unit/retrieval/conftest.py class MockSearchSettings (line 9) | class MockSearchSettings: method __init__ (line 11) | def __init__(self, **kwargs): class MockDocument (line 38) | class MockDocument: method __init__ (line 40) | def __init__(self, document_id, raw_text, metadata=None, chunks=None): class MockChunk (line 47) | class MockChunk: method __init__ (line 49) | def __init__(self, chunk_id, document_id, text, metadata=None): class MockCitation (line 57) | class MockCitation: method __init__ (line 59) | def __init__(self, citation_id, text, metadata=None, source=None): function mock_providers (line 67) | def mock_providers(): function sample_chunk_results (line 183) | def sample_chunk_results(): function sample_documents (line 198) | def sample_documents(): FILE: py/tests/unit/retrieval/test_citations.py class CitationTracker (line 17) | class CitationTracker: method __init__ (line 19) | def __init__(self): method is_new_span (line 25) | def is_new_span(self, citation_id, span): method get_all_citation_spans (line 49) | def get_all_citation_spans(self): class MockCitation (line 57) | class MockCitation: method __init__ (line 59) | def __init__(self, citation_id, chunk_id=None, document_id=None, text=... function mock_providers (line 69) | def mock_providers(): function sample_chunk_results (line 98) | def sample_chunk_results(): class TestCitationExtraction (line 115) | class TestCitationExtraction: method test_extract_citations_basic (line 118) | def test_extract_citations_basic(self): method test_extract_citations_with_spans (line 151) | def test_extract_citations_with_spans(self): method test_citation_extraction_edge_cases (line 201) | def test_citation_extraction_edge_cases(self): method test_citation_sanitization (line 260) | def test_citation_sanitization(self): class TestCitationTracker (line 282) | class TestCitationTracker: method test_citation_tracker_init (line 285) | def test_citation_tracker_init(self): method test_is_new_span (line 295) | def test_is_new_span(self): method test_get_all_citation_spans (line 311) | def test_get_all_citation_spans(self): method test_citation_tracker_multiple_spans (line 332) | def test_citation_tracker_multiple_spans(self): class TestCitationStreamingEvents (line 357) | class TestCitationStreamingEvents: method test_emit_citation_event (line 360) | def test_emit_citation_event(self): method test_citation_tracking_during_streaming (line 396) | def test_citation_tracking_during_streaming(self): class TestRAGWithCitations (line 465) | class TestRAGWithCitations: method test_rag_with_citation_metadata (line 469) | async def test_rag_with_citation_metadata(self, mock_providers, sample... method test_rag_response_with_citations (line 512) | async def test_rag_response_with_citations(self, mock_providers, sampl... method test_consolidate_citations_in_final_answer (line 569) | async def test_consolidate_citations_in_final_answer(self, mock_provid... class TestCitationUtils (line 634) | class TestCitationUtils: method test_extract_citations (line 637) | def test_extract_citations(self): method test_extract_citations_edge_cases (line 655) | def test_extract_citations_edge_cases(self): method test_extract_citation_spans (line 708) | def test_extract_citation_spans(self): method test_extract_citation_spans_edge_cases (line 733) | def test_extract_citation_spans_edge_cases(self): method test_core_citation_tracker (line 767) | def test_core_citation_tracker(self): method test_core_citation_tracker_edge_cases (line 793) | def test_core_citation_tracker_edge_cases(self): method test_find_new_citation_spans (line 817) | def test_find_new_citation_spans(self): method test_find_new_citation_spans_edge_cases (line 847) | def test_find_new_citation_spans_edge_cases(self): method test_performance_with_many_citations (line 873) | def test_performance_with_many_citations(self): method test_streaming_citation_handling (line 915) | def test_streaming_citation_handling(self): method test_malformed_citations (line 954) | def test_malformed_citations(self): function find_new_citation_spans (line 986) | def find_new_citation_spans(text, tracker, start_offset=0): FILE: py/tests/unit/retrieval/test_database_filters.py class TestParamHelper (line 36) | class TestParamHelper: method test_initialization_empty (line 38) | def test_initialization_empty(self): method test_initialization_with_params (line 42) | def test_initialization_with_params(self): method test_add_param (line 47) | def test_add_param(self): method test_add_multiple_params (line 57) | def test_add_multiple_params(self): class TestBuildStandardColumnCondition (line 67) | class TestBuildStandardColumnCondition: method test_operators (line 79) | def test_operators(self, op, value, expected_sql, expected_params): method test_unsupported_operator (line 82) | def test_unsupported_operator(self): method test_invalid_value_type_for_like (line 86) | def test_invalid_value_type_for_like(self): method test_invalid_value_type_for_list_ops (line 92) | def test_invalid_value_type_for_list_ops(self): class TestBuildCollectionIdsCondition (line 99) | class TestBuildCollectionIdsCondition: method test_operators (line 114) | def test_operators(self, op, value, expected_sql, expected_params): method test_invalid_uuid (line 117) | def test_invalid_uuid(self): method test_invalid_value_type_list (line 125) | def test_invalid_value_type_list(self): method test_invalid_value_type_single (line 131) | def test_invalid_value_type_single(self): method test_unsupported_operator (line 137) | def test_unsupported_operator(self): class TestBuildMetadataCondition (line 144) | class TestBuildMetadataCondition: method _expected_safe_compare_sql (line 147) | def _expected_safe_compare_sql(self, accessor, sql_op, param_placehold... method test_operators_simple_path (line 179) | def test_operators_simple_path(self, op, value, expected_sql_part, exp... method test_eq_shorthand_simple_path (line 210) | def test_eq_shorthand_simple_path(self): method test_operators_nested_path (line 237) | def test_operators_nested_path(self, path, op, value, expected_sql_par... method test_eq_shorthand_nested_path (line 294) | def test_eq_shorthand_nested_path(self): method test_nested_structure_condition (line 300) | def test_nested_structure_condition(self): method test_nested_structure_condition_with_op (line 306) | def test_nested_structure_condition_with_op(self): method test_null_handling_simple (line 316) | def test_null_handling_simple(self): method test_null_handling_nested (line 322) | def test_null_handling_nested(self): method test_jsonb_array_operators_simple_path (line 337) | def test_jsonb_array_operators_simple_path(self, op, value, expected_s... method test_jsonb_array_operators_nested_path (line 355) | def test_jsonb_array_operators_nested_path(self, op, value, expected_s... method test_unsupported_operator (line 367) | def test_unsupported_operator(self): method test_json_contains_non_serializable (line 372) | def test_json_contains_non_serializable(self): method test_contains_operator_maps_to_json_contains_simple (line 378) | def test_contains_operator_maps_to_json_contains_simple(self): method test_contains_operator_maps_to_json_contains_nested (line 388) | def test_contains_operator_maps_to_json_contains_nested(self): class TestProcessFieldCondition (line 398) | class TestProcessFieldCondition: method _expected_safe_compare_sql (line 400) | def _expected_safe_compare_sql(self, accessor, sql_op, param_placehold... method test_routes_collection_id_shorthand_single_value (line 404) | def test_routes_collection_id_shorthand_single_value(self): method test_routes_collection_id_shorthand_eq_op (line 407) | def test_routes_collection_id_shorthand_eq_op(self): method test_routes_collection_id_shorthand_ne_op (line 410) | def test_routes_collection_id_shorthand_ne_op(self): method test_routes_collection_id_shorthand_in_op (line 413) | def test_routes_collection_id_shorthand_in_op(self): method test_routes_collection_ids_direct_op (line 416) | def test_routes_collection_ids_direct_op(self): method test_routes_collection_ids_shorthand_list (line 419) | def test_routes_collection_ids_shorthand_list(self): method test_routes_standard_column_shorthand_eq (line 422) | def test_routes_standard_column_shorthand_eq(self): method test_routes_standard_column_op (line 425) | def test_routes_standard_column_op(self): method test_routes_metadata_shorthand_eq_implicit (line 428) | def test_routes_metadata_shorthand_eq_implicit(self): method test_routes_metadata_op_implicit (line 431) | def test_routes_metadata_op_implicit(self): method test_routes_metadata_nested_shorthand_eq_implicit (line 435) | def test_routes_metadata_nested_shorthand_eq_implicit(self): method test_routes_metadata_nested_structure_implicit (line 439) | def test_routes_metadata_nested_structure_implicit(self): method test_routes_metadata_nested_structure_op_implicit (line 443) | def test_routes_metadata_nested_structure_op_implicit(self): method test_routes_metadata_explicit_path_shorthand (line 447) | def test_routes_metadata_explicit_path_shorthand(self): method test_routes_metadata_explicit_path_op (line 450) | def test_routes_metadata_explicit_path_op(self): method test_routes_metadata_explicit_column_nested_structure (line 454) | def test_routes_metadata_explicit_column_nested_structure(self): class TestProcessFilterDict (line 462) | class TestProcessFilterDict: method _expected_safe_compare_sql (line 464) | def _expected_safe_compare_sql(self, accessor, sql_op, param_placehold... method test_empty_dict (line 468) | def test_empty_dict(self): method test_single_field_condition (line 471) | def test_single_field_condition(self): method test_multiple_field_conditions_implicit_and (line 474) | def test_multiple_field_conditions_implicit_and(self): method test_logical_and (line 478) | def test_logical_and(self): method test_logical_or (line 481) | def test_logical_or(self): method test_nested_logical (line 484) | def test_nested_logical(self): method test_empty_logical_and (line 489) | def test_empty_logical_and(self): method test_empty_logical_or (line 492) | def test_empty_logical_or(self): class TestApplyFiltersApi (line 497) | class TestApplyFiltersApi: method _expected_safe_compare_sql (line 499) | def _expected_safe_compare_sql(self, accessor, sql_op, param_placehold... method test_simple_equality_filter (line 503) | def test_simple_equality_filter(self): method test_operator_equality_filter (line 506) | def test_operator_equality_filter(self): method test_and_operator (line 509) | def test_and_operator(self): method test_or_operator (line 512) | def test_or_operator(self): method test_simple_metadata_equality_implicit (line 515) | def test_simple_metadata_equality_implicit(self): method test_simple_metadata_equality_explicit (line 518) | def test_simple_metadata_equality_explicit(self): method test_numeric_metadata_comparison_implicit (line 521) | def test_numeric_metadata_comparison_implicit(self): method test_numeric_metadata_comparison_explicit (line 525) | def test_numeric_metadata_comparison_explicit(self): method test_metadata_column_target_nested (line 529) | def test_metadata_column_target_nested(self): method test_collection_id_shorthand (line 534) | def test_collection_id_shorthand(self): method test_collection_ids_overlap (line 537) | def test_collection_ids_overlap(self): method test_collection_ids_array_contains (line 540) | def test_collection_ids_array_contains(self): method test_empty_filters_condition_mode (line 543) | def test_empty_filters_condition_mode(self): method test_empty_filters_where_mode (line 545) | def test_empty_filters_where_mode(self): method test_false_filters_where_mode (line 547) | def test_false_filters_where_mode(self): method test_null_value_standard (line 550) | def test_null_value_standard(self): method test_initial_params_accumulation (line 553) | def test_initial_params_accumulation(self): method test_custom_top_level_columns (line 556) | def test_custom_top_level_columns(self): method test_custom_json_column (line 561) | def test_custom_json_column(self): method test_metadata_array_in_implicit (line 564) | def test_metadata_array_in_implicit(self): method test_metadata_array_in_explicit_nested (line 567) | def test_metadata_array_in_explicit_nested(self): method test_metadata_array_nin_implicit (line 570) | def test_metadata_array_nin_implicit(self): method test_metadata_array_nin_explicit_nested (line 574) | def test_metadata_array_nin_explicit_nested(self): method test_metadata_array_in_empty (line 581) | def test_metadata_array_in_empty(self): method test_metadata_array_nin_empty (line 584) | def test_metadata_array_nin_empty(self): method test_combined_filters (line 587) | def test_combined_filters(self): method test_combined_filters_with_array_in (line 592) | def test_combined_filters_with_array_in(self): method test_more_complex_metadata_and_standard (line 597) | def test_more_complex_metadata_and_standard(self): FILE: py/tests/unit/retrieval/test_rag_processing.py function mock_search_results (line 13) | def mock_search_results(): function mock_providers (line 34) | def mock_providers(): class TestRAGPromptBuilding (line 54) | class TestRAGPromptBuilding: method test_rag_prompt_construction (line 58) | async def test_rag_prompt_construction(self, mock_providers, mock_sear... method test_rag_prompt_construction_without_metadata (line 123) | async def test_rag_prompt_construction_without_metadata(self, mock_pro... method test_rag_prompt_with_task_prompt (line 177) | async def test_rag_prompt_with_task_prompt(self, mock_providers, mock_... method test_rag_prompt_with_conversation_history (line 224) | async def test_rag_prompt_with_conversation_history(self, mock_provide... method test_rag_prompt_with_citations (line 284) | async def test_rag_prompt_with_citations(self, mock_providers, mock_se... method test_rag_custom_system_prompt (line 344) | async def test_rag_custom_system_prompt(self, mock_providers, mock_sea... class TestRAGProcessing (line 401) | class TestRAGProcessing: method test_rag_generation (line 405) | async def test_rag_generation(self, mock_providers, mock_search_results): method test_rag_streaming (line 447) | async def test_rag_streaming(self, mock_providers, mock_search_results): method test_rag_with_different_provider_models (line 524) | async def test_rag_with_different_provider_models(self, mock_providers... class TestRAGContextFormatting (line 574) | class TestRAGContextFormatting: method test_default_context_formatting (line 577) | def test_default_context_formatting(self, mock_search_results): method test_numbered_list_context_formatting (line 617) | def test_numbered_list_context_formatting(self, mock_search_results): method test_source_attribution_context_formatting (line 637) | def test_source_attribution_context_formatting(self, mock_search_resul... method test_citation_marker_context_formatting (line 658) | def test_citation_marker_context_formatting(self, mock_search_results): class TestRAGErrorHandling (line 687) | class TestRAGErrorHandling: method test_rag_with_empty_search_results (line 691) | async def test_rag_with_empty_search_results(self, mock_providers): method test_rag_with_malformed_search_results (line 729) | async def test_rag_with_malformed_search_results(self, mock_providers): method test_rag_with_llm_error_recovery (line 781) | async def test_rag_with_llm_error_recovery(self, mock_providers, mock_... class TestRAGContextTruncation (line 844) | class TestRAGContextTruncation: method test_token_count_truncation (line 847) | def test_token_count_truncation(self, mock_search_results): method test_score_threshold_truncation (line 886) | def test_score_threshold_truncation(self, mock_search_results): method test_mixed_truncation_strategy (line 911) | def test_mixed_truncation_strategy(self, mock_search_results): class TestAdvancedCitationHandling (line 950) | class TestAdvancedCitationHandling: method mock_citation_results (line 954) | def mock_citation_results(self): method test_structured_citation_formatting (line 976) | def test_structured_citation_formatting(self, mock_citation_results): method test_inline_citation_replacement (line 1024) | def test_inline_citation_replacement(self, mock_citation_results): method test_hybrid_citation_strategy (line 1086) | def test_hybrid_citation_strategy(self, mock_citation_results): class TestRAGRetrievalStrategies (line 1176) | class TestRAGRetrievalStrategies: method test_hybrid_search_strategy (line 1180) | async def test_hybrid_search_strategy(self, mock_providers): method test_reranking_strategy (line 1285) | async def test_reranking_strategy(self, mock_providers, mock_search_re... FILE: py/tests/unit/retrieval/test_retrieval_old.py function mock_providers (line 7) | def mock_providers(): function retrieval_service (line 51) | def retrieval_service(mock_providers): FILE: services/clustering/main.py class Relationship (line 16) | class Relationship(BaseModel): class LeidenParams (line 22) | class LeidenParams(BaseModel): class ClusterRequest (line 31) | class ClusterRequest(BaseModel): class CommunityAssignment (line 35) | class CommunityAssignment(BaseModel): class ClusterResponse (line 40) | class ClusterResponse(BaseModel): function cluster_graph (line 45) | def cluster_graph(request: ClusterRequest): function health (line 82) | def health(): FILE: services/unstructured/main.py class PartitionRequestModel (line 18) | class PartitionRequestModel(BaseModel): class PartitionResponseModel (line 24) | class PartitionResponseModel(BaseModel): function run_partition (line 33) | def run_partition(file_content: str, filename: str, ingestion_config: di... function health_endpoint (line 41) | async def health_endpoint(): function partition_endpoint (line 46) | async def partition_endpoint(request: PartitionRequestModel):