__init__.py 5.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247
  1. import logging
  2. # Keep '*' imports for enhanced development velocity
  3. from .agent import *
  4. from .base import *
  5. from .database import *
  6. from .main import *
  7. from .parsers import *
  8. from .pipelines import *
  9. from .pipes import *
  10. from .providers import *
  11. logger = logging.getLogger()
  12. logger.setLevel(logging.INFO)
  13. # Create a console handler and set the level to info
  14. ch = logging.StreamHandler()
  15. ch.setLevel(logging.INFO)
  16. # Create a formatter and set it for the handler
  17. formatter = logging.Formatter(
  18. "%(asctime)s - %(levelname)s - %(name)s - %(message)s"
  19. )
  20. ch.setFormatter(formatter)
  21. # Add the handler to the logger
  22. logger.addHandler(ch)
  23. # Optional: Prevent propagation to the root logger
  24. logger.propagate = False
  25. logging.getLogger("httpx").setLevel(logging.WARNING)
  26. logging.getLogger("LiteLLM").setLevel(logging.WARNING)
  27. __all__ = [
  28. ## AGENT
  29. # Base
  30. "R2RAgent",
  31. "R2RStreamingAgent",
  32. # RAG Agents
  33. "R2RRAGAgent",
  34. "R2RStreamingRAGAgent",
  35. ## BASE
  36. # Base abstractions
  37. "AsyncSyncMeta",
  38. "syncable",
  39. # Completion abstractions
  40. "MessageType",
  41. # Document abstractions
  42. "Document",
  43. "DocumentChunk",
  44. "DocumentResponse",
  45. "IngestionStatus",
  46. "KGExtractionStatus",
  47. "KGEnrichmentStatus",
  48. "DocumentType",
  49. # Embedding abstractions
  50. "EmbeddingPurpose",
  51. "default_embedding_prefixes",
  52. # Exception abstractions
  53. "R2RDocumentProcessingError",
  54. "R2RException",
  55. # KG abstractions
  56. "Entity",
  57. "KGExtraction",
  58. "Relationship",
  59. # LLM abstractions
  60. "GenerationConfig",
  61. "LLMChatCompletion",
  62. "LLMChatCompletionChunk",
  63. "RAGCompletion",
  64. # Prompt abstractions
  65. "Prompt",
  66. # Search abstractions
  67. "AggregateSearchResult",
  68. "WebSearchResponse",
  69. "GraphSearchResult",
  70. "ChunkSearchSettings",
  71. "GraphSearchSettings",
  72. "ChunkSearchResult",
  73. "SearchSettings",
  74. "select_search_filters",
  75. "SearchMode",
  76. "HybridSearchSettings",
  77. # User abstractions
  78. "Token",
  79. "TokenData",
  80. # Vector abstractions
  81. "Vector",
  82. "VectorEntry",
  83. "VectorType",
  84. "IndexConfig",
  85. ## AGENT
  86. # Agent abstractions
  87. "Agent",
  88. "AgentConfig",
  89. "Conversation",
  90. "Message",
  91. "Tool",
  92. "ToolResult",
  93. ## API
  94. # Auth Responses
  95. "TokenResponse",
  96. "User",
  97. ## LOGGING
  98. # Run Manager
  99. "RunManager",
  100. "manage_run",
  101. ## PARSERS
  102. # Base parser
  103. "AsyncParser",
  104. ## PIPELINE
  105. # Base pipeline
  106. "AsyncPipeline",
  107. ## PIPES
  108. "AsyncPipe",
  109. "AsyncState",
  110. ## PROVIDERS
  111. # Base provider classes
  112. "AppConfig",
  113. "Provider",
  114. "ProviderConfig",
  115. # Auth provider
  116. "AuthConfig",
  117. "AuthProvider",
  118. # Crypto provider
  119. "CryptoConfig",
  120. "CryptoProvider",
  121. # Email provider
  122. "EmailConfig",
  123. "EmailProvider",
  124. # Database providers
  125. "LimitSettings",
  126. "DatabaseConfig",
  127. "DatabaseProvider",
  128. # Embedding provider
  129. "EmbeddingConfig",
  130. "EmbeddingProvider",
  131. # LLM provider
  132. "CompletionConfig",
  133. "CompletionProvider",
  134. ## UTILS
  135. "RecursiveCharacterTextSplitter",
  136. "TextSplitter",
  137. "run_pipeline",
  138. "to_async_generator",
  139. "generate_id",
  140. "increment_version",
  141. "validate_uuid",
  142. ## MAIN
  143. ## R2R ABSTRACTIONS
  144. "R2RProviders",
  145. "R2RPipes",
  146. "R2RPipelines",
  147. "R2RAgents",
  148. ## R2R APP
  149. "R2RApp",
  150. ## R2R APP ENTRY
  151. # "r2r_app",
  152. ## R2R ASSEMBLY
  153. # Builder
  154. "R2RBuilder",
  155. # Config
  156. "R2RConfig",
  157. # Factory
  158. "R2RProviderFactory",
  159. "R2RPipeFactory",
  160. "R2RPipelineFactory",
  161. "R2RAgentFactory",
  162. ## R2R SERVICES
  163. "AuthService",
  164. "IngestionService",
  165. "ManagementService",
  166. "RetrievalService",
  167. "GraphService",
  168. ## PARSERS
  169. # Media parsers
  170. "AudioParser",
  171. "BMPParser",
  172. "DOCParser",
  173. "DOCXParser",
  174. "ImageParser",
  175. "ODTParser",
  176. "VLMPDFParser",
  177. "BasicPDFParser",
  178. "PDFParserUnstructured",
  179. "PPTParser",
  180. "PPTXParser",
  181. "RTFParser",
  182. # Structured parsers
  183. "CSVParser",
  184. "CSVParserAdvanced",
  185. "EMLParser",
  186. "EPUBParser",
  187. "JSONParser",
  188. "MSGParser",
  189. "ORGParser",
  190. "P7SParser",
  191. "RSTParser",
  192. "TIFFParser",
  193. "TSVParser",
  194. "XLSParser",
  195. "XLSXParser",
  196. "XLSXParserAdvanced",
  197. # Text parsers
  198. "MDParser",
  199. "HTMLParser",
  200. "TextParser",
  201. ## PIPELINES
  202. "SearchPipeline",
  203. "RAGPipeline",
  204. ## PIPES
  205. "SearchPipe",
  206. "EmbeddingPipe",
  207. "GraphExtractionPipe",
  208. "ParsingPipe",
  209. "QueryTransformPipe",
  210. "RAGPipe",
  211. "StreamingRAGPipe",
  212. "VectorSearchPipe",
  213. "VectorStoragePipe",
  214. "GraphStoragePipe",
  215. "MultiSearchPipe",
  216. ## PROVIDERS
  217. # Auth
  218. "SupabaseAuthProvider",
  219. "R2RAuthProvider",
  220. # Crypto
  221. "BCryptCryptoProvider",
  222. "BcryptCryptoConfig",
  223. "NaClCryptoConfig",
  224. "NaClCryptoProvider",
  225. # Database
  226. "PostgresDatabaseProvider",
  227. # Embeddings
  228. "LiteLLMEmbeddingProvider",
  229. "OpenAIEmbeddingProvider",
  230. "OllamaEmbeddingProvider",
  231. # LLM
  232. "OpenAICompletionProvider",
  233. "LiteLLMCompletionProvider",
  234. # Ingestion
  235. "UnstructuredIngestionProvider",
  236. "R2RIngestionProvider",
  237. "ChunkingStrategy",
  238. ]