select_ai documentation¶
select_ai is a Python module which enables integrating DBMS_CLOUD_AI
PL/SQL package into Python workflows. It bridges the gap between PL/SQL package’s AI capabilities
and Python’s rich ecosystem.
Getting Started¶
Actions¶
Privileges¶
Provider¶
- 1. Provider
Credential¶
Profile Attributes¶
Profile¶
- 1. Profile lifecycle
- 2. Profile actions
- 2.1. Profile Object Model
- 2.2. Base
ProfileAPI - 2.3.
ProfileAPI - 2.4. Create Profile
- 2.5. Reuse Profile
- 2.6. Enable and disable Profile
- 2.7. Update Profile
- 2.8. Delete Profile
- 2.9. Narrate
- 2.10. Show SQL
- 2.11. Explain SQL
- 2.12. Show Prompt
- 2.13. Run SQL
- 2.14. Chat
- 2.15. Streaming chat
- 2.16. Request-level profile attribute overrides
- 2.17. Summarize
- 2.18. Translate
- 2.19. Share a profile
- 2.20. Give feedback on generated SQL
- 2.21. List profiles
Async Profile¶
- 1. Async profile lifecycle
- 2. Async profile actions
- 2.1.
AsyncProfileAPI - 2.2. Async Profile creation
- 2.3. Reuse Async Profile
- 2.4. Enable and disable AsyncProfile
- 2.5. Update Async Profile
- 2.6. Delete Async Profile
- 2.7. Async explain SQL
- 2.8. Async run SQL
- 2.9. Async show SQL
- 2.10. Async show prompt
- 2.11. Async concurrent SQL
- 2.12. Async chat
- 2.13. Async streaming chat
- 2.14. Async request-level profile attribute overrides
- 2.15. Summarize
- 2.16. Translate
- 2.17. Async pipeline
- 2.18. Share a profile asynchronously
- 2.19. Give async feedback on generated SQL
- 2.20. List profiles asynchronously
- 2.1.
Conversation¶
- 1.
Conversation Object model - 2.
ConversationAttributes - 3.
ConversationAPI - 4.
AsyncConversationAPIAsyncConversationAsyncConversation.add_tag()AsyncConversation.create()AsyncConversation.delete()AsyncConversation.delete_prompt()AsyncConversation.fetch()AsyncConversation.get_attributes()AsyncConversation.list()AsyncConversation.list_prompts()AsyncConversation.remove_tag()AsyncConversation.set_attributes()
- 4.1. Async chat session
- 4.2. Async prompt history and tags
- 4.3. Async list conversations
Vector Index¶
- 1. Vector Index
- 2.
VectorIndexObject Model - 3.
VectorIndexAttributesVectorIndexAttributesVectorIndexAttributes.chunk_overlapVectorIndexAttributes.chunk_sizeVectorIndexAttributes.create()VectorIndexAttributes.dict()VectorIndexAttributes.enable_sourcesVectorIndexAttributes.json()VectorIndexAttributes.keys()VectorIndexAttributes.locationVectorIndexAttributes.match_limitVectorIndexAttributes.object_storage_credential_nameVectorIndexAttributes.pipeline_nameVectorIndexAttributes.profile_nameVectorIndexAttributes.refresh_rateVectorIndexAttributes.similarity_thresholdVectorIndexAttributes.vector_db_credential_nameVectorIndexAttributes.vector_db_endpointVectorIndexAttributes.vector_db_providerVectorIndexAttributes.vector_dimensionVectorIndexAttributes.vector_distance_metricVectorIndexAttributes.vector_table_name
- 3.1.
OracleVectorIndexAttributes
- 4.
VectorIndexAPIVectorIndexVectorIndex.create()VectorIndex.delete()VectorIndex.delete_index()VectorIndex.disable()VectorIndex.enable()VectorIndex.fetch()VectorIndex.get_attributes()VectorIndex.get_next_refresh_timestamp()VectorIndex.get_profile()VectorIndex.grant_access()VectorIndex.list()VectorIndex.qualified_nameVectorIndex.revoke_access()VectorIndex.set_attribute()VectorIndex.set_attributes()
- 4.1. Create vector index
- 4.2. List vector index
- 4.3. Fetch vector index
- 4.4. Update vector index attributes
- 4.5. RAG using vector index
- 4.6. Delete vector index
- 5.
AsyncVectorIndexAPIAsyncVectorIndexAsyncVectorIndex.create()AsyncVectorIndex.delete()AsyncVectorIndex.delete_index()AsyncVectorIndex.disable()AsyncVectorIndex.enable()AsyncVectorIndex.fetch()AsyncVectorIndex.get_attributes()AsyncVectorIndex.get_next_refresh_timestamp()AsyncVectorIndex.get_profile()AsyncVectorIndex.grant_access()AsyncVectorIndex.list()AsyncVectorIndex.qualified_nameAsyncVectorIndex.revoke_access()AsyncVectorIndex.set_attribute()AsyncVectorIndex.set_attributes()
- 5.1. Async create vector index
- 5.2. Async list vector index
- 5.3. Async fetch vector index
- 5.4. Async update vector index attributes
- 5.5. Async RAG using vector index
Synthetic Data¶
Summary¶
AI Agent¶
- 1.
Tool - 2.
Task - 3.
Agent - 4. Team
- 5. Agent history
- 6. AI agent examples
Async AI Agent¶
- 1.
AsyncToolAsyncToolAsyncTool.create()AsyncTool.create_built_in_tool()AsyncTool.create_email_notification_tool()AsyncTool.create_pl_sql_tool()AsyncTool.create_rag_tool()AsyncTool.create_slack_notification_tool()AsyncTool.create_sql_tool()AsyncTool.create_websearch_tool()AsyncTool.delete()AsyncTool.delete_tool()AsyncTool.describe_tool()AsyncTool.disable()AsyncTool.enable()AsyncTool.fetch()AsyncTool.list()AsyncTool.run_tool()AsyncTool.set_attribute()AsyncTool.set_attributes()
- 1.1. Create Tool
- 1.2. List Tools
- 1.3. Inspect and run a tool
- 2.
AsyncTask - 3.
AsyncAgent - 4. AsyncTeam
AsyncTeamAsyncTeam.create()AsyncTeam.delete()AsyncTeam.delete_team()AsyncTeam.describe_team()AsyncTeam.disable()AsyncTeam.enable()AsyncTeam.export()AsyncTeam.export_team()AsyncTeam.fetch()AsyncTeam.grant_access()AsyncTeam.import_team()AsyncTeam.list()AsyncTeam.list_tools()AsyncTeam.revoke_access()AsyncTeam.run()AsyncTeam.set_attribute()AsyncTeam.set_attributes()
- 4.1. Share an async team
- 4.2. Supervised teams
- 4.3. Run Team
- 4.4. Export and Import Team
- 4.5. Inspect a team
- 4.6. Lifecycle helpers
- 5. Async agent history
- 6. Async AI agent examples
A2A Integration¶
- 1. Agent2Agent (A2A)
- 1.1. Choose a topology
- 1.2. Why clustered deployments use Consul
- 1.3. Choose how connections are configured
- 1.4. CLI-based deployment on any cloud
- 1.5. Installation and prerequisites
- 1.6. Protocol compatibility
- 1.7. Standalone A2A server
- 1.8. Persistent Oracle-backed state
- 1.9. Wallet-based database connections
- 1.10. Private database CA certificates
- 1.11. Database call timeout
- 1.12. Clustered A2A gateway and worker
- 1.13. Google Cloud deployment
- 1.14. Troubleshooting and security notes
Command Line Interface¶
Web Frameworks¶
Concurrent Prompt Processing¶
API Reference¶
- Errors, sessions, and result objects
- Error handling
AgentAttributesEmptyErrorAgentNotFoundErrorAgentTaskAttributesEmptyErrorAgentTaskNotFoundErrorAgentTeamAttributesEmptyErrorAgentTeamNotFoundErrorAgentToolAttributesEmptyErrorAgentToolNotFoundErrorConversationNotFoundErrorDatabaseNotConnectedErrorInvalidSQLErrorProfileAttributesEmptyErrorProfileExistsErrorProfileNotFoundErrorSelectAIErrorVectorIndexNotFoundError
- Session objects
- Agent history results
- Enumerations
- Error handling