mirror of
https://github.com/hwchase17/langchain.git
synced 2025-06-09 08:26:55 +00:00
166 lines
4.1 KiB
Plaintext
166 lines
4.1 KiB
Plaintext
{
|
|
"cells": [
|
|
{
|
|
"cell_type": "markdown",
|
|
"source": [
|
|
"# Oracle Autonomous Database\n",
|
|
"\n",
|
|
"Oracle autonomous database is a cloud database that uses machine learning to automate database tuning, security, backups, updates, and other routine management tasks traditionally performed by DBAs.\n",
|
|
"\n",
|
|
"This notebook covers how to load documents from oracle autonomous database, the loader supports connection with connection string or tns configuration.\n",
|
|
"\n",
|
|
"## Prerequisites\n",
|
|
"1. Database runs in a 'Thin' mode:\n",
|
|
" https://python-oracledb.readthedocs.io/en/latest/user_guide/appendix_b.html\n",
|
|
"2. `pip install oracledb`:\n",
|
|
" https://python-oracledb.readthedocs.io/en/latest/user_guide/installation.html"
|
|
],
|
|
"metadata": {
|
|
"collapsed": false
|
|
}
|
|
},
|
|
{
|
|
"cell_type": "markdown",
|
|
"source": [
|
|
"## Instructions"
|
|
],
|
|
"metadata": {
|
|
"collapsed": false
|
|
}
|
|
},
|
|
{
|
|
"cell_type": "code",
|
|
"execution_count": null,
|
|
"outputs": [],
|
|
"source": [
|
|
"pip install oracledb"
|
|
],
|
|
"metadata": {
|
|
"collapsed": false,
|
|
"pycharm": {
|
|
"is_executing": true
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"cell_type": "code",
|
|
"execution_count": null,
|
|
"outputs": [],
|
|
"source": [
|
|
"from langchain_community.document_loaders import OracleAutonomousDatabaseLoader\n",
|
|
"from settings import s"
|
|
],
|
|
"metadata": {
|
|
"collapsed": false,
|
|
"pycharm": {
|
|
"is_executing": true
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"cell_type": "markdown",
|
|
"source": [
|
|
"With mutual TLS authentication (mTLS), wallet_location and wallet_password are required to create the connection, user can create connection by providing either connection string or tns configuration details."
|
|
],
|
|
"metadata": {
|
|
"collapsed": false
|
|
}
|
|
},
|
|
{
|
|
"cell_type": "code",
|
|
"execution_count": null,
|
|
"outputs": [],
|
|
"source": [
|
|
"SQL_QUERY = \"select prod_id, time_id from sh.costs fetch first 5 rows only\"\n",
|
|
"\n",
|
|
"doc_loader_1 = OracleAutonomousDatabaseLoader(\n",
|
|
" query=SQL_QUERY,\n",
|
|
" user=s.USERNAME,\n",
|
|
" password=s.PASSWORD,\n",
|
|
" schema=s.SCHEMA,\n",
|
|
" config_dir=s.CONFIG_DIR,\n",
|
|
" wallet_location=s.WALLET_LOCATION,\n",
|
|
" wallet_password=s.PASSWORD,\n",
|
|
" tns_name=s.TNS_NAME,\n",
|
|
")\n",
|
|
"doc_1 = doc_loader_1.load()\n",
|
|
"\n",
|
|
"doc_loader_2 = OracleAutonomousDatabaseLoader(\n",
|
|
" query=SQL_QUERY,\n",
|
|
" user=s.USERNAME,\n",
|
|
" password=s.PASSWORD,\n",
|
|
" schema=s.SCHEMA,\n",
|
|
" connection_string=s.CONNECTION_STRING,\n",
|
|
" wallet_location=s.WALLET_LOCATION,\n",
|
|
" wallet_password=s.PASSWORD,\n",
|
|
")\n",
|
|
"doc_2 = doc_loader_2.load()"
|
|
],
|
|
"metadata": {
|
|
"collapsed": false,
|
|
"pycharm": {
|
|
"is_executing": true
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"cell_type": "markdown",
|
|
"source": [
|
|
"With TLS authentication, wallet_location and wallet_password are not required."
|
|
],
|
|
"metadata": {
|
|
"collapsed": false
|
|
}
|
|
},
|
|
{
|
|
"cell_type": "code",
|
|
"execution_count": null,
|
|
"outputs": [],
|
|
"source": [
|
|
"doc_loader_3 = OracleAutonomousDatabaseLoader(\n",
|
|
" query=SQL_QUERY,\n",
|
|
" user=s.USERNAME,\n",
|
|
" password=s.PASSWORD,\n",
|
|
" schema=s.SCHEMA,\n",
|
|
" config_dir=s.CONFIG_DIR,\n",
|
|
" tns_name=s.TNS_NAME,\n",
|
|
")\n",
|
|
"doc_3 = doc_loader_3.load()\n",
|
|
"\n",
|
|
"doc_loader_4 = OracleAutonomousDatabaseLoader(\n",
|
|
" query=SQL_QUERY,\n",
|
|
" user=s.USERNAME,\n",
|
|
" password=s.PASSWORD,\n",
|
|
" schema=s.SCHEMA,\n",
|
|
" connection_string=s.CONNECTION_STRING,\n",
|
|
")\n",
|
|
"doc_4 = doc_loader_4.load()"
|
|
],
|
|
"metadata": {
|
|
"collapsed": false
|
|
}
|
|
}
|
|
],
|
|
"metadata": {
|
|
"kernelspec": {
|
|
"display_name": "Python 3",
|
|
"language": "python",
|
|
"name": "python3"
|
|
},
|
|
"language_info": {
|
|
"codemirror_mode": {
|
|
"name": "ipython",
|
|
"version": 2
|
|
},
|
|
"file_extension": ".py",
|
|
"mimetype": "text/x-python",
|
|
"name": "python",
|
|
"nbconvert_exporter": "python",
|
|
"pygments_lexer": "ipython2",
|
|
"version": "2.7.6"
|
|
}
|
|
},
|
|
"nbformat": 4,
|
|
"nbformat_minor": 0
|
|
}
|