Kunal Gupta commited on
Commit
0e6228a
·
1 Parent(s): ce2d5a4

Upload striimgpt_faiss.py

Browse files
Files changed (1) hide show
  1. striimgpt_faiss.py +787 -0
striimgpt_faiss.py ADDED
@@ -0,0 +1,787 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ import os
2
+ import json
3
+ import gradio as gr
4
+ import openai
5
+
6
+ from typing import Iterable
7
+ from dotenv import load_dotenv
8
+ from langchain.document_loaders import WebBaseLoader
9
+ from langchain.embeddings import OpenAIEmbeddings
10
+ from langchain.vectorstores import FAISS
11
+ from langchain.chat_models import ChatOpenAI
12
+ from langchain.chains import ConversationalRetrievalChain
13
+ from langchain.text_splitter import RecursiveCharacterTextSplitter
14
+ from langchain.schema import Document
15
+ from langchain.agents import load_tools, initialize_agent
16
+ from langchain.agents import AgentType
17
+ from langchain.tools import Tool
18
+ from langchain.utilities import GoogleSearchAPIWrapper
19
+
20
+ load_dotenv('.env')
21
+ os.environ["OPENAI_API_KEY"] = "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"
22
+ os.environ["GOOGLE_CSE_ID"] = "2009ed8270de04cab"
23
+ os.environ["GOOGLE_API_KEY"] = "AIzaSyCfWtopAn2jthODIWis-HvWpYnCKcCGrDw"
24
+
25
+ openai.api_key = os.getenv("OPENAI_API_KEY")
26
+
27
+ # Function to save ChromaDB to a local file
28
+ def save_docs_to_jsonl(array:Iterable[Document], file_path:str)->None:
29
+ with open(file_path, 'w') as jsonl_file:
30
+ for doc in array:
31
+ jsonl_file.write(doc.json() + '\n')
32
+
33
+ # Function to retrive ChromaDB from local file
34
+ def load_docs_from_jsonl(file_path) -> Iterable[Document]:
35
+ if not os.path.exists(file_path):
36
+ print("Invalid file path.")
37
+ return []
38
+ array = []
39
+ with open(file_path, 'r') as jsonl_file:
40
+ for line in jsonl_file:
41
+ data = json.loads(line)
42
+ obj = Document(**data)
43
+ array.append(obj)
44
+ return array
45
+
46
+ # Function to query OpenAI's ChatGPT
47
+
48
+ # Loading all the documents if they are not found locally
49
+ documents = load_docs_from_jsonl('striim_docs.jsonl')
50
+ '''
51
+ if len(documents) != 631:
52
+ loaders = [
53
+ # Striim Cloud Docs
54
+ WebBaseLoader("https://www.striim.com/docs/en/what-s-new-in-striim-cloud-4-2-0.html"),
55
+ WebBaseLoader("https://www.striim.com/docs/en/what-is-striim-.html"),
56
+ WebBaseLoader("https://www.striim.com/docs/en/subscribe-to-striim-in-the-aws-marketplace.html"),
57
+ WebBaseLoader("https://www.striim.com/docs/en/deploying-and-managing-striim-cloud.html"),
58
+ WebBaseLoader("https://www.striim.com/docs/en/subscribe-to-striim-in-the-microsoft-azure-marketplace.html"),
59
+ WebBaseLoader("https://www.striim.com/docs/en/subscribe-to-striim-in-the-google-cloud-platform-marketplace.html"),
60
+ WebBaseLoader("https://www.striim.com/docs/en/create-a-striim-cloud-service.html"),
61
+ WebBaseLoader("https://www.striim.com/docs/en/using-an-ssh-tunnel-to-connect-to-a-source-or-target.html"),
62
+ WebBaseLoader("https://www.striim.com/docs/en/using-azure-private-endpoints.html"),
63
+ WebBaseLoader("https://www.striim.com/docs/en/private-service-connect-support.html"),
64
+ WebBaseLoader("https://www.striim.com/docs/en/adding-users-to-a-striim-cloud-service.html"),
65
+ WebBaseLoader("https://www.striim.com/docs/en/using-kafka-persisted-streams-in-striim-cloud.html"),
66
+ WebBaseLoader("https://www.striim.com/docs/en/enabling-ojet-on-striim-cloud.html"),
67
+ WebBaseLoader("https://www.striim.com/docs/en/scheduling-service-stop-and-restart-times.html"),
68
+ WebBaseLoader("https://www.striim.com/docs/en/metering-in-striim-cloud.html"),
69
+ WebBaseLoader("https://www.striim.com/docs/en/upgrading-striim-cloud.html"),
70
+ WebBaseLoader("https://www.striim.com/docs/en/patching-striim-cloud.html"),
71
+ WebBaseLoader("https://www.striim.com/docs/en/using-active-directory-with-striim-cloud.html"),
72
+ WebBaseLoader("https://www.striim.com/docs/en/get-support-for-striim-cloud.html"),
73
+ WebBaseLoader("https://www.striim.com/docs/en/getting-started.html"),
74
+ WebBaseLoader("https://www.striim.com/docs/en/common-striim-use-cases.html"),
75
+ WebBaseLoader("https://www.striim.com/docs/en/running-the-cdc-demo-apps.html"),
76
+ WebBaseLoader("https://www.striim.com/docs/en/hands-on-quick-tour.html"),
77
+ WebBaseLoader("https://www.striim.com/docs/en/resource-usage-policies.html"),
78
+ WebBaseLoader("https://www.striim.com/docs/en/pipelines.html"),
79
+ WebBaseLoader("https://www.striim.com/docs/en/sources.html"),
80
+ WebBaseLoader("https://www.striim.com/docs/en/readers-overview.html"),
81
+ WebBaseLoader("https://www.striim.com/docs/en/supported-reader-parser-combinations.html"),
82
+ WebBaseLoader("https://www.striim.com/docs/en/database-reader.html"),
83
+ WebBaseLoader("https://www.striim.com/docs/en/file-reader.html"),
84
+ WebBaseLoader("https://www.striim.com/docs/en/gcs-reader.html"),
85
+ WebBaseLoader("https://www.striim.com/docs/en/gg-trail-reader.html"),
86
+ WebBaseLoader("https://www.striim.com/docs/en/hdfs-reader.html"),
87
+ WebBaseLoader("https://www.striim.com/docs/en/hp-nonstop-enscribe,-sql-mp,-and-sql-mx-readers.html"),
88
+ WebBaseLoader("https://www.striim.com/docs/en/http-reader.html"),
89
+ WebBaseLoader("https://www.striim.com/docs/en/incremental-batch-reader.html"),
90
+ WebBaseLoader("https://www.striim.com/docs/en/jms-reader.html"),
91
+ WebBaseLoader("https://www.striim.com/docs/en/using-jmsreader-with-ibm-websphere-mq.html"),
92
+ WebBaseLoader("https://www.striim.com/docs/en/jmx-reader.html"),
93
+ WebBaseLoader("https://www.striim.com/docs/en/kafka-reader.html"),
94
+ WebBaseLoader("https://www.striim.com/docs/en/mapr-fs-reader.html"),
95
+ WebBaseLoader("https://www.striim.com/docs/en/mariadb---readers---new.html"),
96
+ WebBaseLoader("https://www.striim.com/docs/en/mongodb-reader.html"),
97
+ WebBaseLoader("https://www.striim.com/docs/en/mqtt-reader.html"),
98
+ WebBaseLoader("https://www.striim.com/docs/en/ms-sql-reader.html"),
99
+ WebBaseLoader("https://www.striim.com/docs/en/multifile-reader.html"),
100
+ WebBaseLoader("https://www.striim.com/docs/en/mysql---readers.html"),
101
+ WebBaseLoader("https://www.striim.com/docs/en/opcua-reader.html"),
102
+ WebBaseLoader("https://www.striim.com/docs/en/oracle-database-readers.html"),
103
+ WebBaseLoader("https://www.striim.com/docs/en/postgresql-readers.html"),
104
+ WebBaseLoader("https://www.striim.com/docs/en/salesforce-readers.html"),
105
+ WebBaseLoader("https://www.striim.com/docs/en/salesforce-reader.html"),
106
+ WebBaseLoader("https://www.striim.com/docs/en/salesforce-pardot-reader.html"),
107
+ WebBaseLoader("https://www.striim.com/docs/en/saleforce-pardot-reader-sample-waevent.html"),
108
+ WebBaseLoader("https://www.striim.com/docs/en/salesforce-platform-event-reader.html"),
109
+ WebBaseLoader("https://www.striim.com/docs/en/salesforce-push-topic-reader.html"),
110
+ WebBaseLoader("https://www.striim.com/docs/en/replicating-salesforce-data-to-oracle.html"),
111
+ WebBaseLoader("https://www.striim.com/docs/en/salesforce-data-type-support-and-correspondence.html"),
112
+ WebBaseLoader("https://www.striim.com/docs/en/servicenow-reader.html"),
113
+ WebBaseLoader("https://www.striim.com/docs/en/spanner-batch-reader.html"),
114
+ WebBaseLoader("https://www.striim.com/docs/en/sql-server.html"),
115
+ WebBaseLoader("https://www.striim.com/docs/en/s3-reader.html"),
116
+ WebBaseLoader("https://www.striim.com/docs/en/sybase.html"),
117
+ WebBaseLoader("https://www.striim.com/docs/en/tcp-reader.html"),
118
+ WebBaseLoader("https://www.striim.com/docs/en/teradata.html"),
119
+ WebBaseLoader("https://www.striim.com/docs/en/udp-reader.html"),
120
+ WebBaseLoader("https://www.striim.com/docs/en/windows-event-log-reader.html"),
121
+ WebBaseLoader("https://www.striim.com/docs/en/reading-from-other-sources.html"),
122
+ WebBaseLoader("https://www.striim.com/docs/en/parsers.html"),
123
+ WebBaseLoader("https://www.striim.com/docs/en/aal--apache-access-log--parser.html"),
124
+ WebBaseLoader("https://www.striim.com/docs/en/avro-parser.html"),
125
+ WebBaseLoader("https://www.striim.com/docs/en/binary-parser.html"),
126
+ WebBaseLoader("https://www.striim.com/docs/en/cobol-copybook-parser.html"),
127
+ WebBaseLoader("https://www.striim.com/docs/en/collectd-parser.html"),
128
+ WebBaseLoader("https://www.striim.com/docs/en/dsv-parser.html"),
129
+ WebBaseLoader("https://www.striim.com/docs/en/free-form-text-parser.html"),
130
+ WebBaseLoader("https://www.striim.com/docs/en/gg--goldengate--trail-parser.html"),
131
+ WebBaseLoader("https://www.striim.com/docs/en/json-parser.html"),
132
+ WebBaseLoader("https://www.striim.com/docs/en/netflow-parser.html"),
133
+ WebBaseLoader("https://www.striim.com/docs/en/nvp--name-value-pair--parser.html"),
134
+ WebBaseLoader("https://www.striim.com/docs/en/parquet-parser.html"),
135
+ WebBaseLoader("https://www.striim.com/docs/en/snmp-parser.html"),
136
+ WebBaseLoader("https://www.striim.com/docs/en/striim-parser.html"),
137
+ WebBaseLoader("https://www.striim.com/docs/en/xml-parser.html"),
138
+ WebBaseLoader("https://www.striim.com/docs/en/xml-parser-v2.html"),
139
+ WebBaseLoader("https://www.striim.com/docs/en/change-data-capture--cdc-.html"),
140
+ WebBaseLoader("https://www.striim.com/docs/en/what-is-change-data-capture-.html"),
141
+ WebBaseLoader("https://www.striim.com/docs/en/working-with-sql-cdc-readers.html"),
142
+ WebBaseLoader("https://www.striim.com/docs/en/waevent-contents-for-change-data.html"),
143
+ WebBaseLoader("https://www.striim.com/docs/en/parsing-the-fields-of-waevent-for-cdc-readers.html"),
144
+ WebBaseLoader("https://www.striim.com/docs/en/sample-tql-application-using-change-data.html"),
145
+ WebBaseLoader("https://www.striim.com/docs/en/validating-table-mapping.html"),
146
+ WebBaseLoader("https://www.striim.com/docs/en/reading-from-multiple-tables.html"),
147
+ WebBaseLoader("https://www.striim.com/docs/en/using-output-to-----map.html"),
148
+ WebBaseLoader("https://www.striim.com/docs/en/adding-user-defined-data-to-waevent-streams.html"),
149
+ WebBaseLoader("https://www.striim.com/docs/en/modifying-the-waevent-data-array-using-replace-functions.html"),
150
+ WebBaseLoader("https://www.striim.com/docs/en/modifying-and-masking-values-in-the-waevent-data-array-using-modify.html"),
151
+ WebBaseLoader("https://www.striim.com/docs/en/using-the-data--,-dataordered--,-before--,-and-beforeordered---functions.html"),
152
+ WebBaseLoader("https://www.striim.com/docs/en/collecting-discarded-events-in-an-exception-store.html"),
153
+ WebBaseLoader("https://www.striim.com/docs/en/handling-ddl-changes-in-cdc-reader-source-tables.html"),
154
+ WebBaseLoader("https://www.striim.com/docs/en/sql-cdc-replication-examples.html"),
155
+ WebBaseLoader("https://www.striim.com/docs/en/replicating-oracle-data-to-another-oracle-database.html"),
156
+ WebBaseLoader("https://www.striim.com/docs/en/replicating-oracle-data-to-amazon-redshift.html"),
157
+ WebBaseLoader("https://www.striim.com/docs/en/replicating-oracle-data-to-azure-cosmos-db.html"),
158
+ WebBaseLoader("https://www.striim.com/docs/en/replicating-oracle-data-to-cassandra.html"),
159
+ WebBaseLoader("https://www.striim.com/docs/en/replicating-oracle-data-to-google-bigquery.html"),
160
+ WebBaseLoader("https://www.striim.com/docs/en/replicating-oracle-data-to-google-cloud-postgresql.html"),
161
+ WebBaseLoader("https://www.striim.com/docs/en/replicating-mysql-data-to-google-cloud-spanner.html"),
162
+ WebBaseLoader("https://www.striim.com/docs/en/replicating-oracle-data-to-a-hazelcast--hot-cache-.html"),
163
+ WebBaseLoader("https://www.striim.com/docs/en/replicating-oracle-data-to-hbase.html"),
164
+ WebBaseLoader("https://www.striim.com/docs/en/writing-raw-cdc-data-to-hive.html"),
165
+ WebBaseLoader("https://www.striim.com/docs/en/oracle-table.html"),
166
+ WebBaseLoader("https://www.striim.com/docs/en/tql-application.html"),
167
+ WebBaseLoader("https://www.striim.com/docs/en/avro-schema-file.html"),
168
+ WebBaseLoader("https://www.striim.com/docs/en/hive-table.html"),
169
+ WebBaseLoader("https://www.striim.com/docs/en/generate-sample-cdc-data-in-oracle.html"),
170
+ WebBaseLoader("https://www.striim.com/docs/en/query-the-hive-table.html"),
171
+ WebBaseLoader("https://www.striim.com/docs/en/replicating-oracle-data-to-hive.html"),
172
+ WebBaseLoader("https://www.striim.com/docs/en/replicating-oracle-data-to-kafka.html"),
173
+ WebBaseLoader("https://www.striim.com/docs/en/replicating-oracle-data-to-sap-hana.html"),
174
+ WebBaseLoader("https://www.striim.com/docs/en/replicating-oracle-data-to-snowflake.html"),
175
+ WebBaseLoader("https://www.striim.com/docs/en/bidirectional-replication.html"),
176
+ WebBaseLoader("https://www.striim.com/docs/en/adapter-property-data-types.html"),
177
+ WebBaseLoader("https://www.striim.com/docs/en/hp-nonstop-cdc.html"),
178
+ WebBaseLoader("https://www.striim.com/docs/en/setting-up-hp-nonstop-with-the-striim-agent.html"),
179
+ WebBaseLoader("https://www.striim.com/docs/en/starting-the-striim-agent-process-on-the-hp-nonstop-platform.html"),
180
+ WebBaseLoader("https://www.striim.com/docs/en/running-the-striim-agent-as-an-scf-persistent-generic-process.html"),
181
+ WebBaseLoader("https://www.striim.com/docs/en/disabling-tmf-audit-compression.html"),
182
+ WebBaseLoader("https://www.striim.com/docs/en/system-log-messages-about-sql-mp-automatic-recompilation.html"),
183
+ WebBaseLoader("https://www.striim.com/docs/en/hp-nonstop-reader-properties.html"),
184
+ WebBaseLoader("https://www.striim.com/docs/en/encoding-of-character-fields.html"),
185
+ WebBaseLoader("https://www.striim.com/docs/en/hp-nonstop-reader-waevent-fields.html"),
186
+ WebBaseLoader("https://www.striim.com/docs/en/functions-for-hp-nonstop-transaction-ids.html"),
187
+ WebBaseLoader("https://www.striim.com/docs/en/hpnonstopenscribereader-data-type-support-and-correspondence.html"),
188
+ WebBaseLoader("https://www.striim.com/docs/en/hpnonstopsqlmpreader-data-type-support-and-correspondence.html"),
189
+ WebBaseLoader("https://www.striim.com/docs/en/hpnonstopsqlmxreader-data-type-support-and-correspondence.html"),
190
+ WebBaseLoader("https://www.striim.com/docs/en/mariadb---skysql.html"),
191
+ WebBaseLoader("https://www.striim.com/docs/en/mysql-162388.html"),
192
+ WebBaseLoader("https://www.striim.com/docs/en/oracle-database-cdc.html"),
193
+ WebBaseLoader("https://www.striim.com/docs/en/oracle-goldengate.html"),
194
+ WebBaseLoader("https://www.striim.com/docs/en/postgresql-cdc.html"),
195
+ WebBaseLoader("https://www.striim.com/docs/en/sql-server-cdc.html"),
196
+ WebBaseLoader("https://www.striim.com/docs/en/working-with-non-sql-cdc-readers.html"),
197
+ WebBaseLoader("https://www.striim.com/docs/en/azure-cosmos-db-using-core--sql--api.html"),
198
+ WebBaseLoader("https://www.striim.com/docs/en/azure-cosmos-db-using-cosmos-db-api-for-mongodb.html"),
199
+ WebBaseLoader("https://www.striim.com/docs/en/mongodb.html"),
200
+ WebBaseLoader("https://www.striim.com/docs/en/targets.html"),
201
+ WebBaseLoader("https://www.striim.com/docs/en/writers-overview.html"),
202
+ WebBaseLoader("https://www.striim.com/docs/en/supported-writer-formatter-combinations.html"),
203
+ WebBaseLoader("https://www.striim.com/docs/en/working-with-writers.html"),
204
+ WebBaseLoader("https://www.striim.com/docs/en/setting-output-names-and-rollover---upload-policies.html"),
205
+ WebBaseLoader("https://www.striim.com/docs/en/creating-multiple-writer-instances.html"),
206
+ WebBaseLoader("https://www.striim.com/docs/en/mapping-columns.html"),
207
+ WebBaseLoader("https://www.striim.com/docs/en/handling--table-not-found--errors.html"),
208
+ WebBaseLoader("https://www.striim.com/docs/en/setting-encryption-policies.html"),
209
+ WebBaseLoader("https://www.striim.com/docs/en/viewing-discarded-events.html"),
210
+ WebBaseLoader("https://www.striim.com/docs/en/ddl-support-in-writers.html"),
211
+ WebBaseLoader("https://www.striim.com/docs/en/how-update-and-delete-operations-are-handled-in-writers.html"),
212
+ WebBaseLoader("https://www.striim.com/docs/en/using-private-service-connect-with-google-cloud-adapters.html"),
213
+ WebBaseLoader("https://www.striim.com/docs/en/connecting-to-vms-or-databases-in-google-cloud-using-private-service-connect.html"),
214
+ WebBaseLoader("https://www.striim.com/docs/en/adls-gen1-writer.html"),
215
+ WebBaseLoader("https://www.striim.com/docs/en/adls-gen2-writer.html"),
216
+ WebBaseLoader("https://www.striim.com/docs/en/azure-blob-writer.html"),
217
+ WebBaseLoader("https://www.striim.com/docs/en/azure-databricks.html"),
218
+ WebBaseLoader("https://www.striim.com/docs/en/azure-event-hub-writer.html"),
219
+ WebBaseLoader("https://www.striim.com/docs/en/azure-sql-dwh--data-warehouse--writer.html"),
220
+ WebBaseLoader("https://www.striim.com/docs/en/azure-synapse-writer.html"),
221
+ WebBaseLoader("https://www.striim.com/docs/en/bigquery-writer.html"),
222
+ WebBaseLoader("https://www.striim.com/docs/en/cassandra-cosmos-db-writer.html"),
223
+ WebBaseLoader("https://www.striim.com/docs/en/cassandra-writer.html"),
224
+ WebBaseLoader("https://www.striim.com/docs/en/cosmos-db-writer.html"),
225
+ WebBaseLoader("https://www.striim.com/docs/en/database-writer.html"),
226
+ WebBaseLoader("https://www.striim.com/docs/en/databricks-writer.html"),
227
+ WebBaseLoader("https://www.striim.com/docs/en/file-writer.html"),
228
+ WebBaseLoader("https://www.striim.com/docs/en/gcs-writer.html"),
229
+ WebBaseLoader("https://www.striim.com/docs/en/google-pubsub-writer.html"),
230
+ WebBaseLoader("https://www.striim.com/docs/en/hazelcast-writer.html"),
231
+ WebBaseLoader("https://www.striim.com/docs/en/hbase-writer.html"),
232
+ WebBaseLoader("https://www.striim.com/docs/en/hdfs-writer.html"),
233
+ WebBaseLoader("https://www.striim.com/docs/en/hive-writer.html"),
234
+ WebBaseLoader("https://www.striim.com/docs/en/http-writer.html"),
235
+ WebBaseLoader("https://www.striim.com/docs/en/hp-nonstop-readers-old.html"),
236
+ WebBaseLoader("https://www.striim.com/docs/en/jms-writer.html"),
237
+ WebBaseLoader("https://www.striim.com/docs/en/jpa-writer.html"),
238
+ WebBaseLoader("https://www.striim.com/docs/en/kafka-writer.html"),
239
+ WebBaseLoader("https://www.striim.com/docs/en/testing-kafkawriter-performance.html"),
240
+ WebBaseLoader("https://www.striim.com/docs/en/kafkawriter-output-with-avroformatter.html"),
241
+ WebBaseLoader("https://www.striim.com/docs/en/using-the-confluent-or-hortonworks-schema-registry.html"),
242
+ WebBaseLoader("https://www.striim.com/docs/en/kinesis-writer.html"),
243
+ WebBaseLoader("https://www.striim.com/docs/en/kudu-writer.html"),
244
+ WebBaseLoader("https://www.striim.com/docs/en/mapr-db-writer.html"),
245
+ WebBaseLoader("https://www.striim.com/docs/en/mapr-fs-writer.html"),
246
+ WebBaseLoader("https://www.striim.com/docs/en/mapr-stream-writer.html"),
247
+ WebBaseLoader("https://www.striim.com/docs/en/mariadb-readers-old.html"),
248
+ WebBaseLoader("https://www.striim.com/docs/en/memsql.html"),
249
+ WebBaseLoader("https://www.striim.com/docs/en/mongodb-writer.html"),
250
+ WebBaseLoader("https://www.striim.com/docs/en/mongodb-cosmos-db-writer.html"),
251
+ WebBaseLoader("https://www.striim.com/docs/en/mqtt-writer.html"),
252
+ WebBaseLoader("https://www.striim.com/docs/en/mysql-readers-old.html"),
253
+ WebBaseLoader("https://www.striim.com/docs/en/oracle-database-writers.html"),
254
+ WebBaseLoader("https://www.striim.com/docs/en/postgresql-writers.html"),
255
+ WebBaseLoader("https://www.striim.com/docs/en/redshift-writer.html"),
256
+ WebBaseLoader("https://www.striim.com/docs/en/s3-writer.html"),
257
+ WebBaseLoader("https://www.striim.com/docs/en/salesforce-writer.html"),
258
+ WebBaseLoader("https://www.striim.com/docs/en/sap-hana.html"),
259
+ WebBaseLoader("https://www.striim.com/docs/en/servicenow-writer.html"),
260
+ WebBaseLoader("https://www.striim.com/docs/en/snowflake-writer.html"),
261
+ WebBaseLoader("https://www.striim.com/docs/en/spanner-writer.html"),
262
+ WebBaseLoader("https://www.striim.com/docs/en/sql-server-writers.html"),
263
+ WebBaseLoader("https://www.striim.com/docs/en/formatters.html"),
264
+ WebBaseLoader("https://www.striim.com/docs/en/avro-formatter.html"),
265
+ WebBaseLoader("https://www.striim.com/docs/en/dsv-formatter.html"),
266
+ WebBaseLoader("https://www.striim.com/docs/en/json-formatter.html"),
267
+ WebBaseLoader("https://www.striim.com/docs/en/parquet-formatter.html"),
268
+ WebBaseLoader("https://www.striim.com/docs/en/xml-formatter.html"),
269
+ WebBaseLoader("https://www.striim.com/docs/en/programmer-s-guide.html"),
270
+ WebBaseLoader("https://www.striim.com/docs/en/striim-concepts.html"),
271
+ WebBaseLoader("https://www.striim.com/docs/en/fundamentals-of-tql-programming.html"),
272
+ WebBaseLoader("https://www.striim.com/docs/en/tql-programming-rules-and-best-practices.html"),
273
+ WebBaseLoader("https://www.striim.com/docs/en/loading-and-reloading-tql-applications-during-development.html"),
274
+ WebBaseLoader("https://www.striim.com/docs/en/parsing-the-data-field-of-waevent.html"),
275
+ WebBaseLoader("https://www.striim.com/docs/en/using-regular-expressions--regex-.html"),
276
+ WebBaseLoader("https://www.striim.com/docs/en/sending-alerts-from-applications.html"),
277
+ WebBaseLoader("https://www.striim.com/docs/en/handling-exceptions.html"),
278
+ WebBaseLoader("https://www.striim.com/docs/en/sample-applications-for-programmers.html"),
279
+ WebBaseLoader("https://www.striim.com/docs/en/posapp.html"),
280
+ WebBaseLoader("https://www.striim.com/docs/en/posappdash.html"),
281
+ WebBaseLoader("https://www.striim.com/docs/en/multilogapp.html"),
282
+ WebBaseLoader("https://www.striim.com/docs/en/multilogdash.html"),
283
+ WebBaseLoader("https://www.striim.com/docs/en/using-source-and-target-adapters-in-applications.html"),
284
+ WebBaseLoader("https://www.striim.com/docs/en/data-type-support---mapping-for-schema-conversion---evolution.html"),
285
+ WebBaseLoader("https://www.striim.com/docs/en/data-type-support---mapping-for-mariadb-and-mysql-sources.html"),
286
+ WebBaseLoader("https://www.striim.com/docs/en/data-type-support---mapping-for-oracle-sources.html"),
287
+ WebBaseLoader("https://www.striim.com/docs/en/data-type-support---mapping-for-postgresql-sources.html"),
288
+ WebBaseLoader("https://www.striim.com/docs/en/data-type-support---mapping-for-sql-server-sources.html"),
289
+ WebBaseLoader("https://www.striim.com/docs/en/handling-schema-evolution.html"),
290
+ WebBaseLoader("https://www.striim.com/docs/en/creating-and-modifying-apps-using-the-flow-designer.html"),
291
+ WebBaseLoader("https://www.striim.com/docs/en/creating-an-app-using-the-flow-designer.html"),
292
+ WebBaseLoader("https://www.striim.com/docs/en/using-event-transformers.html"),
293
+ WebBaseLoader("https://www.striim.com/docs/en/using-database-event-transformers.html"),
294
+ WebBaseLoader("https://www.striim.com/docs/en/creating-apps-using-templates.html"),
295
+ WebBaseLoader("https://www.striim.com/docs/en/creating-apps-by-importing-tql.html"),
296
+ WebBaseLoader("https://www.striim.com/docs/en/creating-or-modifying-apps-using-source-preview.html"),
297
+ WebBaseLoader("https://www.striim.com/docs/en/creating-a-data-validation-dashboard.html"),
298
+ WebBaseLoader("https://www.striim.com/docs/en/switching-from-initial-load-to-continuous-replication.html"),
299
+ WebBaseLoader("https://www.striim.com/docs/en/handing-apps-off-to-qa-or-production.html"),
300
+ WebBaseLoader("https://www.striim.com/docs/en/intermediate-tql-programming--common-patterns.html"),
301
+ WebBaseLoader("https://www.striim.com/docs/en/getting-data-from-sources.html"),
302
+ WebBaseLoader("https://www.striim.com/docs/en/sources-with-waevent-output.html"),
303
+ WebBaseLoader("https://www.striim.com/docs/en/json-sources-with-custom-output-types.html"),
304
+ WebBaseLoader("https://www.striim.com/docs/en/filtering-data-in-a-source.html"),
305
+ WebBaseLoader("https://www.striim.com/docs/en/parsing-sources-with-regular-expressions.html"),
306
+ WebBaseLoader("https://www.striim.com/docs/en/parsing-http-log-entries.html"),
307
+ WebBaseLoader("https://www.striim.com/docs/en/extracting-substrings-from-log-entries.html"),
308
+ WebBaseLoader("https://www.striim.com/docs/en/matching-ipv4-subnet-octets.html"),
309
+ WebBaseLoader("https://www.striim.com/docs/en/parsing-soap-entries.html"),
310
+ WebBaseLoader("https://www.striim.com/docs/en/bounding-data-with-windows.html"),
311
+ WebBaseLoader("https://www.striim.com/docs/en/bound-data-in-batches-by-time.html"),
312
+ WebBaseLoader("https://www.striim.com/docs/en/bound-data-in-batches-by-event-count.html"),
313
+ WebBaseLoader("https://www.striim.com/docs/en/bound-data-continuously-by-time.html"),
314
+ WebBaseLoader("https://www.striim.com/docs/en/bound-data-continuously-by-event-count.html"),
315
+ WebBaseLoader("https://www.striim.com/docs/en/bounding-by-both-time-and-event-count.html"),
316
+ WebBaseLoader("https://www.striim.com/docs/en/using-a-window-to-define-an-alert-threshold.html"),
317
+ WebBaseLoader("https://www.striim.com/docs/en/joining-cache-data-with-cqs.html"),
318
+ WebBaseLoader("https://www.striim.com/docs/en/filtering-data-with-cqs.html"),
319
+ WebBaseLoader("https://www.striim.com/docs/en/simple-filtering-by-a-single-criterion.html"),
320
+ WebBaseLoader("https://www.striim.com/docs/en/filtering-fields.html"),
321
+ WebBaseLoader("https://www.striim.com/docs/en/selecting-events-based-on-cache-entries.html"),
322
+ WebBaseLoader("https://www.striim.com/docs/en/using-multiple-cqs-for-complex-criteria.html"),
323
+ WebBaseLoader("https://www.striim.com/docs/en/aggregating-data-with-cqs.html"),
324
+ WebBaseLoader("https://www.striim.com/docs/en/handling-nulls-with-cqs.html"),
325
+ WebBaseLoader("https://www.striim.com/docs/en/handling-variable-length-events-with-cqs.html"),
326
+ WebBaseLoader("https://www.striim.com/docs/en/sending-data-to-targets.html"),
327
+ WebBaseLoader("https://www.striim.com/docs/en/sending-data-to-wactionstores.html"),
328
+ WebBaseLoader("https://www.striim.com/docs/en/using-first-and-last.html"),
329
+ WebBaseLoader("https://www.striim.com/docs/en/detecting-device-status-changes.html"),
330
+ WebBaseLoader("https://www.striim.com/docs/en/advanced-tql-programming.html"),
331
+ WebBaseLoader("https://www.striim.com/docs/en/writing-exceptions-to-a-wactionstore.html"),
332
+ WebBaseLoader("https://www.striim.com/docs/en/using-the-forwarding-agent.html"),
333
+ WebBaseLoader("https://www.striim.com/docs/en/creating-a-custom-kafka-partitioner.html"),
334
+ WebBaseLoader("https://www.striim.com/docs/en/reading-a-kafka-stream-with-an-external-kafka-consumer.html"),
335
+ WebBaseLoader("https://www.striim.com/docs/en/changing-and-masking-field-values-using-modify.html"),
336
+ WebBaseLoader("https://www.striim.com/docs/en/using-namespaces.html"),
337
+ WebBaseLoader("https://www.striim.com/docs/en/using-eventlist.html"),
338
+ WebBaseLoader("https://www.striim.com/docs/en/using-iterator.html"),
339
+ WebBaseLoader("https://www.striim.com/docs/en/using-the-meta---function.html"),
340
+ WebBaseLoader("https://www.striim.com/docs/en/reading-from-and-writing-to-kafka-using-avro.html"),
341
+ WebBaseLoader("https://www.striim.com/docs/en/using-pattern-matching.html"),
342
+ WebBaseLoader("https://www.striim.com/docs/en/event-variables.html"),
343
+ WebBaseLoader("https://www.striim.com/docs/en/referring-to-past-events.html"),
344
+ WebBaseLoader("https://www.striim.com/docs/en/timer-events.html"),
345
+ WebBaseLoader("https://www.striim.com/docs/en/alternation------.html"),
346
+ WebBaseLoader("https://www.striim.com/docs/en/matching-overlapping-patterns------.html"),
347
+ WebBaseLoader("https://www.striim.com/docs/en/using-analytics-and-regression-functions.html"),
348
+ WebBaseLoader("https://www.striim.com/docs/en/using-apache-flume.html"),
349
+ WebBaseLoader("https://www.striim.com/docs/en/using-striim-open-processors.html"),
350
+ WebBaseLoader("https://www.striim.com/docs/en/tql-reference.html"),
351
+ WebBaseLoader("https://www.striim.com/docs/en/ddl-and-component-reference.html"),
352
+ WebBaseLoader("https://www.striim.com/docs/en/alter-and-recompile.html"),
353
+ WebBaseLoader("https://www.striim.com/docs/en/alter-propertyset.html"),
354
+ WebBaseLoader("https://www.striim.com/docs/en/create-application-----end-application.html"),
355
+ WebBaseLoader("https://www.striim.com/docs/en/create-cache.html"),
356
+ WebBaseLoader("https://www.striim.com/docs/en/create-cq--query-.html"),
357
+ WebBaseLoader("https://www.striim.com/docs/en/create-dashboard.html"),
358
+ WebBaseLoader("https://www.striim.com/docs/en/create-eventtable.html"),
359
+ WebBaseLoader("https://www.striim.com/docs/en/create-exceptionstore.html"),
360
+ WebBaseLoader("https://www.striim.com/docs/en/create-external-cache.html"),
361
+ WebBaseLoader("https://www.striim.com/docs/en/create-flow-----end-flow.html"),
362
+ WebBaseLoader("https://www.striim.com/docs/en/create-propertyvariable.html"),
363
+ WebBaseLoader("https://www.striim.com/docs/en/create-or-replace.html"),
364
+ WebBaseLoader("https://www.striim.com/docs/en/create-router.html"),
365
+ WebBaseLoader("https://www.striim.com/docs/en/create-sorter.html"),
366
+ WebBaseLoader("https://www.striim.com/docs/en/create-source.html"),
367
+ WebBaseLoader("https://www.striim.com/docs/en/create-stream.html"),
368
+ WebBaseLoader("https://www.striim.com/docs/en/create-subscription.html"),
369
+ WebBaseLoader("https://www.striim.com/docs/en/create-target.html"),
370
+ WebBaseLoader("https://www.striim.com/docs/en/create-type.html"),
371
+ WebBaseLoader("https://www.striim.com/docs/en/create-vault.html"),
372
+ WebBaseLoader("https://www.striim.com/docs/en/create-wactionstore.html"),
373
+ WebBaseLoader("https://www.striim.com/docs/en/create-window.html"),
374
+ WebBaseLoader("https://www.striim.com/docs/en/drop.html"),
375
+ WebBaseLoader("https://www.striim.com/docs/en/administrator-s-guide.html"),
376
+ WebBaseLoader("https://www.striim.com/docs/en/starting-and-stopping-striim-cloud.html"),
377
+ WebBaseLoader("https://www.striim.com/docs/en/application-states.html"),
378
+ WebBaseLoader("https://www.striim.com/docs/en/managing-users,-permissions,-and-roles.html"),
379
+ WebBaseLoader("https://www.striim.com/docs/en/managing-deployment-groups.html"),
380
+ WebBaseLoader("https://www.striim.com/docs/en/using-vaults.html"),
381
+ WebBaseLoader("https://www.striim.com/docs/en/loading-standalone-sources,-caches,-and-wactionstores.html"),
382
+ WebBaseLoader("https://www.striim.com/docs/en/sending-alerts-about-servers-and-applications.html"),
383
+ WebBaseLoader("https://www.striim.com/docs/en/managing-smart-alerts.html"),
384
+ WebBaseLoader("https://www.striim.com/docs/en/creating-and-managing-custom-alerts.html"),
385
+ WebBaseLoader("https://www.striim.com/docs/en/configuring-alerts.html"),
386
+ WebBaseLoader("https://www.striim.com/docs/en/configure-striim-to-send-email-alerts.html"),
387
+ WebBaseLoader("https://www.striim.com/docs/en/configure-slack-to-receive-alerts-from-striim.html"),
388
+ WebBaseLoader("https://www.striim.com/docs/en/configure-striim-to-send-slack-alerts.html"),
389
+ WebBaseLoader("https://www.striim.com/docs/en/configure-teams-to-receive-alerts-from-striim.html"),
390
+ WebBaseLoader("https://www.striim.com/docs/en/configure-striim-to-send-teams-alerts.html"),
391
+ WebBaseLoader("https://www.striim.com/docs/en/understanding-and-managing-backpressure.html"),
392
+ WebBaseLoader("https://www.striim.com/docs/en/managing-the-application-lifecycle.html"),
393
+ WebBaseLoader("https://www.striim.com/docs/en/handling-planned-ddl-changes.html"),
394
+ WebBaseLoader("https://www.striim.com/docs/en/replaying-events-using-kafka-streams.html"),
395
+ WebBaseLoader("https://www.striim.com/docs/en/recovering-applications.html"),
396
+ WebBaseLoader("https://www.striim.com/docs/en/automatically-restarting-an-application.html"),
397
+ WebBaseLoader("https://www.striim.com/docs/en/monitoring-guide.html"),
398
+ WebBaseLoader("https://www.striim.com/docs/en/monitoring-using-the-web-ui.html"),
399
+ WebBaseLoader("https://www.striim.com/docs/en/using-monitor-reports.html"),
400
+ WebBaseLoader("https://www.striim.com/docs/en/monitoring-application-progress-in-flow-designer.html"),
401
+ WebBaseLoader("https://www.striim.com/docs/en/understanding-reported-cpu-usage.html"),
402
+ WebBaseLoader("https://www.striim.com/docs/en/understanding-read-lag-values.html"),
403
+ WebBaseLoader("https://www.striim.com/docs/en/using-the-mon-command.html"),
404
+ WebBaseLoader("https://www.striim.com/docs/en/monitoring-end-to-end-lag--lee-.html"),
405
+ WebBaseLoader("https://www.striim.com/docs/en/using-the-report-latency-command.html"),
406
+ WebBaseLoader("https://www.striim.com/docs/en/using-the-report-start---stop-command.html"),
407
+ WebBaseLoader("https://www.striim.com/docs/en/api-guide.html"),
408
+ WebBaseLoader("https://www.striim.com/docs/en/console-commands.html"),
409
+ WebBaseLoader("https://www.striim.com/docs/en/web-ui-guide.html"),
410
+ WebBaseLoader("https://www.striim.com/docs/en/dashboard-guide.html"),
411
+ WebBaseLoader("https://www.striim.com/docs/en/dashboard-rules-and-best-practices.html"),
412
+ WebBaseLoader("https://www.striim.com/docs/en/visualization-types-and-properties.html"),
413
+ WebBaseLoader("https://www.striim.com/docs/en/working-with-dashboards.html"),
414
+ WebBaseLoader("https://www.striim.com/docs/en/installation-and-upgrades.html"),
415
+ WebBaseLoader("https://www.striim.com/docs/en/configuring-remote-hosts.html"),
416
+ WebBaseLoader("https://www.striim.com/docs/en/striim-forwarding-agent-installation-and-configuration.html"),
417
+ WebBaseLoader("https://www.striim.com/docs/en/apache-flume-integration.html"),
418
+ WebBaseLoader("https://www.striim.com/docs/en/collectd-configuration.html"),
419
+ WebBaseLoader("https://www.striim.com/docs/en/snmp-configuration.html"),
420
+ WebBaseLoader("https://www.striim.com/docs/en/glossary.html"),
421
+ WebBaseLoader("https://www.striim.com/docs/en/typographical-and-syntax-conventions.html"),
422
+ WebBaseLoader("https://www.striim.com/docs/en/release-notes.html"),
423
+ WebBaseLoader("https://www.striim.com/docs/en/striim-platform-features-not-currently-available-in-striim-cloud.html"),
424
+ WebBaseLoader("https://www.striim.com/docs/en/contact-striim-support.html"),
425
+ WebBaseLoader("https://www.striim.com/services-support/documentation/"),
426
+ # Striim Platform Docs
427
+ WebBaseLoader("https://www.striim.com/docs/platform/en/what-s-new-in-striim-platform-4-2-0.html"),
428
+ WebBaseLoader("https://www.striim.com/docs/platform/en/what-s-new-in-striim-platform-4-2-0.html"),
429
+ WebBaseLoader("https://www.striim.com/docs/platform/en/what-is-striim-.html"),
430
+ WebBaseLoader("https://www.striim.com/docs/platform/en/differences-between-striim-platform-and-striim-cloud.html"),
431
+ WebBaseLoader("https://www.striim.com/docs/platform/en/getting-started.html"),
432
+ WebBaseLoader("https://www.striim.com/docs/platform/en/common-striim-use-cases.html"),
433
+ WebBaseLoader("https://www.striim.com/docs/platform/en/install-striim-platform-for-evaluation-purposes.html"),
434
+ WebBaseLoader("https://www.striim.com/docs/platform/en/running-the-cdc-demo-apps.html"),
435
+ WebBaseLoader("https://www.striim.com/docs/platform/en/hands-on-quick-tour.html"),
436
+ WebBaseLoader("https://www.striim.com/docs/platform/en/resource-usage-policies.html"),
437
+ WebBaseLoader("https://www.striim.com/docs/platform/en/pipelines.html"),
438
+ WebBaseLoader("https://www.striim.com/docs/platform/en/installation-and-configuration.html"),
439
+ WebBaseLoader("https://www.striim.com/docs/platform/en/system-requirements.html"),
440
+ WebBaseLoader("https://www.striim.com/docs/platform/en/installing-striim.html"),
441
+ WebBaseLoader("https://www.striim.com/docs/platform/en/configuring-striim-s-metadata-repository.html"),
442
+ WebBaseLoader("https://www.striim.com/docs/platform/en/running-striim-in-amazon-ec2.html"),
443
+ WebBaseLoader("https://www.striim.com/docs/platform/en/running-striim-in-azure.html"),
444
+ WebBaseLoader("https://www.striim.com/docs/platform/en/running-striim-in-centos.html"),
445
+ WebBaseLoader("https://www.striim.com/docs/platform/en/creating-a-cluster-in-centos.html"),
446
+ WebBaseLoader("https://www.striim.com/docs/platform/en/adding-a-server-to-a-cluster-in-centos.html"),
447
+ WebBaseLoader("https://www.striim.com/docs/platform/en/running-striim-in-the-google-cloud-platform.html"),
448
+ WebBaseLoader("https://www.striim.com/docs/platform/en/running-striim-in-microsoft-windows.html"),
449
+ WebBaseLoader("https://www.striim.com/docs/platform/en/running-striim-in-snowflake.html"),
450
+ WebBaseLoader("https://www.striim.com/docs/platform/en/running-striim-in-ubuntu.html"),
451
+ WebBaseLoader("https://www.striim.com/docs/platform/en/running-striim-as-a-process.html"),
452
+ WebBaseLoader("https://www.striim.com/docs/platform/en/configuring-striim-platform.html"),
453
+ WebBaseLoader("https://www.striim.com/docs/platform/en/installing-third-party-drivers-in-striim-platform.html"),
454
+ WebBaseLoader("https://www.striim.com/docs/platform/en/changing-the-application-start-timeout.html"),
455
+ WebBaseLoader("https://www.striim.com/docs/platform/en/changing-the-derby-password.html"),
456
+ WebBaseLoader("https://www.striim.com/docs/platform/en/configuring-low-disk-space-monitoring.html"),
457
+ WebBaseLoader("https://www.striim.com/docs/platform/en/enabling-file-lineage.html"),
458
+ WebBaseLoader("https://www.striim.com/docs/platform/en/changing-the-hazelcast-ports.html"),
459
+ WebBaseLoader("https://www.striim.com/docs/platform/en/configuring-http-and-https.html"),
460
+ WebBaseLoader("https://www.striim.com/docs/platform/en/enabling-https.html"),
461
+ WebBaseLoader("https://www.striim.com/docs/platform/en/enable-kerberos-authentication-for-oracle-and-postgresql.html"),
462
+ WebBaseLoader("https://www.striim.com/docs/platform/en/setting-the-log-levels.html"),
463
+ WebBaseLoader("https://www.striim.com/docs/platform/en/changing-log-file-retention-settings.html"),
464
+ WebBaseLoader("https://www.striim.com/docs/platform/en/changing-the-amount-of-memory-available-to-a-striim-server.html"),
465
+ WebBaseLoader("https://www.striim.com/docs/platform/en/changing-metadata-repository-connection-retry-settings.html"),
466
+ WebBaseLoader("https://www.striim.com/docs/platform/en/changing-how-long-monitor-report-data-is-maintained.html"),
467
+ WebBaseLoader("https://www.striim.com/docs/platform/en/enabling-monitoring-via-jmx.html"),
468
+ WebBaseLoader("https://www.striim.com/docs/platform/en/switching-online-help-links-to-open-the-latest-docs-on-the-web.html"),
469
+ WebBaseLoader("https://www.striim.com/docs/platform/en/enabling-ssl-for-ldap.html"),
470
+ WebBaseLoader("https://www.striim.com/docs/platform/en/supporting-active-directory-authentication-for-azure.html"),
471
+ WebBaseLoader("https://www.striim.com/docs/platform/en/supporting-active-directory-authentication-for-sql-server.html"),
472
+ WebBaseLoader("https://www.striim.com/docs/platform/en/setting-the-rest-api-token-timeout.html"),
473
+ WebBaseLoader("https://www.striim.com/docs/platform/en/using-tcp-ip-instead-of-multicast-udp.html"),
474
+ WebBaseLoader("https://www.striim.com/docs/platform/en/locking-out-users-after-failed-logins.html"),
475
+ WebBaseLoader("https://www.striim.com/docs/platform/en/changing-the-web-ui-theme.html"),
476
+ WebBaseLoader("https://www.striim.com/docs/platform/en/setting-a-web-ui-and-console-timeout.html"),
477
+ WebBaseLoader("https://www.striim.com/docs/platform/en/changing-the-web-ui-ports.html"),
478
+ WebBaseLoader("https://www.striim.com/docs/platform/en/narrowing-the-zeromq-port-range.html"),
479
+ WebBaseLoader("https://www.striim.com/docs/platform/en/configuring-kafka-for-persisted-streams.html"),
480
+ WebBaseLoader("https://www.striim.com/docs/platform/en/upgrading-striim.html"),
481
+ WebBaseLoader("https://www.striim.com/docs/platform/en/in-place-upgrade.html"),
482
+ WebBaseLoader("https://www.striim.com/docs/platform/en/export-import-upgrade.html"),
483
+ WebBaseLoader("https://www.striim.com/docs/platform/en/preparing-to-upgrade-and-exporting-the-metadata.html"),
484
+ WebBaseLoader("https://www.striim.com/docs/platform/en/upgrading-in-centos.html"),
485
+ WebBaseLoader("https://www.striim.com/docs/platform/en/upgrading-in-ubuntu.html"),
486
+ WebBaseLoader("https://www.striim.com/docs/platform/en/importing-the-metadata-and-completing-the-upgrade.html"),
487
+ # Striim for BigQuery Docs
488
+ WebBaseLoader("https://www.striim.com/docs/GCP/StriimForBigQuery/en/what-is-striim-for-bigquery-.html"),
489
+ WebBaseLoader("https://www.striim.com/docs/GCP/StriimForBigQuery/en/connect_source-select.html"),
490
+ WebBaseLoader("https://www.striim.com/docs/GCP/StriimForBigQuery/en/prerequisite-checks-mariadb.html"),
491
+ WebBaseLoader("https://www.striim.com/docs/GCP/StriimForBigQuery/en/prerequisite-checks-mysql.html"),
492
+ WebBaseLoader("https://www.striim.com/docs/GCP/StriimForBigQuery/en/prerequisite-checks-oracle.html"),
493
+ WebBaseLoader("https://www.striim.com/docs/GCP/StriimForBigQuery/en/prerequisite-checks-oracle.html#UUID-b900c146-397c-207a-4dc8-9f65015bf9f9_UUID-75440084-bcfd-2815-47bd-a6187eedb706"),
494
+ WebBaseLoader("https://www.striim.com/docs/GCP/StriimForBigQuery/en/prerequisite-checks-oracle.html#UUID-b900c146-397c-207a-4dc8-9f65015bf9f9_UUID-9a533b8b-4fb4-086e-6c80-56e5950ac1a2"),
495
+ WebBaseLoader("https://www.striim.com/docs/GCP/StriimForBigQuery/en/prerequisite-checks-oracle.html#UUID-b900c146-397c-207a-4dc8-9f65015bf9f9_section-idm4534974681201633552621372819"),
496
+ WebBaseLoader("https://www.striim.com/docs/GCP/StriimForBigQuery/en/prerequisite-checks-oracle.html#UUID-b900c146-397c-207a-4dc8-9f65015bf9f9_section-idm4534974402491233552621478836"),
497
+ WebBaseLoader("https://www.striim.com/docs/GCP/StriimForBigQuery/en/prerequisite-checks-postgresql.html"),
498
+ WebBaseLoader("https://www.striim.com/docs/GCP/StriimForBigQuery/en/prerequisite-checks-postgresql.html#UUID-477477cc-bfa8-d00a-dbc8-f5e6d7f0d8ce_UUID-1380ef4e-7a49-9cba-8d57-bcec970068c9"),
499
+ WebBaseLoader("https://www.striim.com/docs/GCP/StriimForBigQuery/en/prerequisite-checks-postgresql.html#UUID-477477cc-bfa8-d00a-dbc8-f5e6d7f0d8ce_UUID-616a1f47-8e66-8a87-3198-dd4d87fe1b36"),
500
+ WebBaseLoader("https://www.striim.com/docs/GCP/StriimForBigQuery/en/prerequisite-checks-postgresql.html#UUID-477477cc-bfa8-d00a-dbc8-f5e6d7f0d8ce_UUID-9e6b9041-acd7-c1aa-4c43-1f195c43bbfb"),
501
+ WebBaseLoader("https://www.striim.com/docs/GCP/StriimForBigQuery/en/prerequisite-checks-sqlserver.html"),
502
+ WebBaseLoader("https://www.striim.com/docs/GCP/StriimForBigQuery/en/getting-started.html"),
503
+ WebBaseLoader("https://www.striim.com/docs/GCP/StriimForBigQuery/en/configure-a-bigquery-service-account.html"),
504
+ WebBaseLoader("https://www.striim.com/docs/GCP/StriimForBigQuery/en/configure-your-source.html"),
505
+ WebBaseLoader("https://www.striim.com/docs/GCP/StriimForBigQuery/en/choose-how-striim-will-connect-to-your-database.html"),
506
+ WebBaseLoader("https://www.striim.com/docs/GCP/StriimForBigQuery/en/create-new.html"),
507
+ WebBaseLoader("https://www.striim.com/docs/GCP/StriimForBigQuery/en/configure-your-firewall-to-allow-striim-to-connect-to-your-database.html"),
508
+ WebBaseLoader("https://www.striim.com/docs/GCP/StriimForBigQuery/en/configure-port-forwarding-in-your-router-to-allow-striim-to-connect-to-your-database.html"),
509
+ WebBaseLoader("https://www.striim.com/docs/GCP/StriimForBigQuery/en/subscribe-to-striim-for-bigquery.html"),
510
+ WebBaseLoader("https://www.striim.com/docs/GCP/StriimForBigQuery/en/create-a-striim-for-bigquery-service.html"),
511
+ WebBaseLoader("https://www.striim.com/docs/GCP/StriimForBigQuery/en/create-a-pipeline.html"),
512
+ WebBaseLoader("https://www.striim.com/docs/GCP/StriimForBigQuery/en/connect_target.html"),
513
+ WebBaseLoader("https://www.striim.com/docs/GCP/StriimForBigQuery/en/select-your-source.html"),
514
+ WebBaseLoader("https://www.striim.com/docs/GCP/StriimForBigQuery/en/connect-to-your-source-database.html"),
515
+ WebBaseLoader("https://www.striim.com/docs/GCP/StriimForBigQuery/en/connect_source-new-mariadb.html"),
516
+ WebBaseLoader("https://www.striim.com/docs/GCP/StriimForBigQuery/en/connect_source-new-mysql.html"),
517
+ WebBaseLoader("https://www.striim.com/docs/GCP/StriimForBigQuery/en/connect_source-new-oracle.html"),
518
+ WebBaseLoader("https://www.striim.com/docs/GCP/StriimForBigQuery/en/connect_source-new-postgresql.html"),
519
+ WebBaseLoader("https://www.striim.com/docs/GCP/StriimForBigQuery/en/connect_source-new-sql-server.html"),
520
+ WebBaseLoader("https://www.striim.com/docs/GCP/StriimForBigQuery/en/select-schemas-and-tables-to-sync.html"),
521
+ WebBaseLoader("https://www.striim.com/docs/GCP/StriimForBigQuery/en/mask-data--optional-.html"),
522
+ WebBaseLoader("https://www.striim.com/docs/GCP/StriimForBigQuery/en/select-key-columns--optional-.html"),
523
+ WebBaseLoader("https://www.striim.com/docs/GCP/StriimForBigQuery/en/when-target-tables-already-exist.html"),
524
+ WebBaseLoader("https://www.striim.com/docs/GCP/StriimForBigQuery/en/add-the-tables-to-table-groups--optional-.html"),
525
+ WebBaseLoader("https://www.striim.com/docs/GCP/StriimForBigQuery/en/additional_settings-settings.html"),
526
+ WebBaseLoader("https://www.striim.com/docs/GCP/StriimForBigQuery/en/review.html"),
527
+ WebBaseLoader("https://www.striim.com/docs/GCP/StriimForBigQuery/en/monitor-pipelines.html"),
528
+ WebBaseLoader("https://www.striim.com/docs/GCP/StriimForBigQuery/en/manage-pipelines.html"),
529
+ WebBaseLoader("https://www.striim.com/docs/GCP/StriimForBigQuery/en/using-the-striim-cloud-console.html"),
530
+ WebBaseLoader("https://www.striim.com/docs/GCP/StriimForBigQuery/en/add-users.html"),
531
+ WebBaseLoader("https://www.striim.com/docs/GCP/StriimForBigQuery/en/internal-wip--using-okta-with-striim-cloud.html"),
532
+ WebBaseLoader("https://www.striim.com/docs/GCP/StriimForBigQuery/en/upgrade-the-instance-size.html"),
533
+ WebBaseLoader("https://www.striim.com/docs/GCP/StriimForBigQuery/en/monitor-the-service-s-virtual-machine.html"),
534
+ WebBaseLoader("https://www.striim.com/docs/GCP/StriimForBigQuery/en/using-the-striim-for-bigquery-rest-api.html"),
535
+ WebBaseLoader("https://www.striim.com/docs/GCP/StriimForBigQuery/en/stop-a-service.html"),
536
+ WebBaseLoader("https://www.striim.com/docs/GCP/StriimForBigQuery/en/security.html"),
537
+ WebBaseLoader("https://www.striim.com/docs/Azure/StriimForDatabricks/en/what-is-striim-for-databricks-.html"),
538
+ WebBaseLoader("https://www.striim.com/docs/Azure/StriimForDatabricks/en/connect_source-select.html"),
539
+ WebBaseLoader("https://www.striim.com/docs/Azure/StriimForDatabricks/en/prerequisite-checks-mariadb.html"),
540
+ WebBaseLoader("https://www.striim.com/docs/Azure/StriimForDatabricks/en/prerequisite-checks-mysql.html"),
541
+ WebBaseLoader("https://www.striim.com/docs/Azure/StriimForDatabricks/en/prerequisite-checks-oracle.html"),
542
+ WebBaseLoader("https://www.striim.com/docs/Azure/StriimForDatabricks/en/prerequisite-checks-postgresql.html"),
543
+ WebBaseLoader("https://www.striim.com/docs/Azure/StriimForDatabricks/en/prerequisite-checks-sqlserver.html"),
544
+ WebBaseLoader("https://www.striim.com/docs/Azure/StriimForDatabricks/en/getting-started.html"),
545
+ WebBaseLoader("https://www.striim.com/docs/Azure/StriimForDatabricks/en/configure-azure-databricks.html"),
546
+ WebBaseLoader("https://www.striim.com/docs/Azure/StriimForDatabricks/en/configure-your-source.html"),
547
+ WebBaseLoader("https://www.striim.com/docs/Azure/StriimForDatabricks/en/choose-how-striim-will-connect-to-your-database.html"),
548
+ WebBaseLoader("https://www.striim.com/docs/Azure/StriimForDatabricks/en/create-new.html"),
549
+ WebBaseLoader("https://www.striim.com/docs/Azure/StriimForDatabricks/en/configure-your-firewall-to-allow-striim-to-connect-to-your-database.html"),
550
+ WebBaseLoader("https://www.striim.com/docs/Azure/StriimForDatabricks/en/configure-port-forwarding-in-your-router-to-allow-striim-to-connect-to-your-database.html"),
551
+ WebBaseLoader("https://www.striim.com/docs/Azure/StriimForDatabricks/en/subscribe-to-striim-for-databricks.html"),
552
+ WebBaseLoader("https://www.striim.com/docs/Azure/StriimForDatabricks/en/create-a-striim-for-databricks-service.html"),
553
+ WebBaseLoader("https://www.striim.com/docs/Azure/StriimForDatabricks/en/create-a-pipeline.html"),
554
+ WebBaseLoader("https://www.striim.com/docs/Azure/StriimForDatabricks/en/connect_target.html"),
555
+ WebBaseLoader("https://www.striim.com/docs/Azure/StriimForDatabricks/en/select-your-source.html"),
556
+ WebBaseLoader("https://www.striim.com/docs/Azure/StriimForDatabricks/en/connect-to-your-source-database.html"),
557
+ WebBaseLoader("https://www.striim.com/docs/Azure/StriimForDatabricks/en/connect-to-your-source-database.html"),
558
+ WebBaseLoader("https://www.striim.com/docs/Azure/StriimForDatabricks/en/connect_source-new-mariadb.html"),
559
+ WebBaseLoader("https://www.striim.com/docs/Azure/StriimForDatabricks/en/connect_source-new-mysql.html"),
560
+ WebBaseLoader("https://www.striim.com/docs/Azure/StriimForDatabricks/en/connect_source-new-oracle.html"),
561
+ WebBaseLoader("https://www.striim.com/docs/Azure/StriimForDatabricks/en/connect_source-new-postgresql.html"),
562
+ WebBaseLoader("https://www.striim.com/docs/Azure/StriimForDatabricks/en/connect_source-new-sql-server.html"),
563
+ WebBaseLoader("https://www.striim.com/docs/Azure/StriimForDatabricks/en/select-schemas-and-tables-to-sync.html"),
564
+ WebBaseLoader("https://www.striim.com/docs/Azure/StriimForDatabricks/en/mask-data--optional-.html"),
565
+ WebBaseLoader("https://www.striim.com/docs/Azure/StriimForDatabricks/en/select-key-columns--optional-.html"),
566
+ WebBaseLoader("https://www.striim.com/docs/Azure/StriimForDatabricks/en/when-target-tables-already-exist.html"),
567
+ WebBaseLoader("https://www.striim.com/docs/Azure/StriimForDatabricks/en/add-the-tables-to-table-groups--optional-.html"),
568
+ WebBaseLoader("https://www.striim.com/docs/Azure/StriimForDatabricks/en/review.html"),
569
+ WebBaseLoader("https://www.striim.com/docs/Azure/StriimForDatabricks/en/monitor-pipelines.html"),
570
+ WebBaseLoader("https://www.striim.com/docs/Azure/StriimForDatabricks/en/manage-pipelines.html"),
571
+ WebBaseLoader("https://www.striim.com/docs/Azure/StriimForDatabricks/en/using-the-striim-cloud-console.html"),
572
+ WebBaseLoader("https://www.striim.com/docs/Azure/StriimForDatabricks/en/add-users.html"),
573
+ WebBaseLoader("https://www.striim.com/docs/Azure/StriimForDatabricks/en/using-okta-with-striim-cloud.html"),
574
+ WebBaseLoader("https://www.striim.com/docs/Azure/StriimForDatabricks/en/upgrade-the-instance-size.html"),
575
+ WebBaseLoader("https://www.striim.com/docs/Azure/StriimForDatabricks/en/monitor-the-service-s-virtual-machine.html"),
576
+ WebBaseLoader("https://www.striim.com/docs/Azure/StriimForDatabricks/en/using-the-striim-for-databricks-rest-api.html"),
577
+ WebBaseLoader("https://www.striim.com/docs/Azure/StriimForDatabricks/en/stop-a-service.html"),
578
+ # Striim for Snowflake
579
+ WebBaseLoader("https://striim.com/docs/AWS/StriimForSnowflake/en/what-is-striim-for-snowflake-.html"),
580
+ WebBaseLoader("https://striim.com/docs/AWS/StriimForSnowflake/en/connect_source-select.html"),
581
+ WebBaseLoader("https://striim.com/docs/AWS/StriimForSnowflake/en/prerequisite-checks-mariadb.html"),
582
+ WebBaseLoader("https://striim.com/docs/AWS/StriimForSnowflake/en/prerequisite-checks-mysql.html"),
583
+ WebBaseLoader("https://striim.com/docs/AWS/StriimForSnowflake/en/prerequisite-checks-oracle.html"),
584
+ WebBaseLoader("https://striim.com/docs/AWS/StriimForSnowflake/en/prerequisite-checks-oracle.html#UUID-b900c146-397c-207a-4dc8-9f65015bf9f9_UUID-75440084-bcfd-2815-47bd-a6187eedb706"),
585
+ WebBaseLoader("https://striim.com/docs/AWS/StriimForSnowflake/en/prerequisite-checks-oracle.html#UUID-b900c146-397c-207a-4dc8-9f65015bf9f9_UUID-9a533b8b-4fb4-086e-6c80-56e5950ac1a2"),
586
+ WebBaseLoader("https://striim.com/docs/AWS/StriimForSnowflake/en/prerequisite-checks-oracle.html#UUID-b900c146-397c-207a-4dc8-9f65015bf9f9_section-idm4534974681201633552621372819"),
587
+ WebBaseLoader("https://striim.com/docs/AWS/StriimForSnowflake/en/prerequisite-checks-oracle.html#UUID-b900c146-397c-207a-4dc8-9f65015bf9f9_section-idm4534974402491233552621478836"),
588
+ WebBaseLoader("https://striim.com/docs/AWS/StriimForSnowflake/en/prerequisite-checks-postgresql.html"),
589
+ WebBaseLoader("https://striim.com/docs/AWS/StriimForSnowflake/en/prerequisite-checks-postgresql.html#UUID-477477cc-bfa8-d00a-dbc8-f5e6d7f0d8ce_UUID-1380ef4e-7a49-9cba-8d57-bcec970068c9"),
590
+ WebBaseLoader("https://striim.com/docs/AWS/StriimForSnowflake/en/prerequisite-checks-postgresql.html#UUID-477477cc-bfa8-d00a-dbc8-f5e6d7f0d8ce_UUID-616a1f47-8e66-8a87-3198-dd4d87fe1b36"),
591
+ WebBaseLoader("https://striim.com/docs/AWS/StriimForSnowflake/en/prerequisite-checks-postgresql.html#UUID-477477cc-bfa8-d00a-dbc8-f5e6d7f0d8ce_UUID-9e6b9041-acd7-c1aa-4c43-1f195c43bbfb"),
592
+ WebBaseLoader("https://striim.com/docs/AWS/StriimForSnowflake/en/prerequisite-checks-sqlserver.html"),
593
+ WebBaseLoader("https://striim.com/docs/AWS/StriimForSnowflake/en/getting-started.html"),
594
+ WebBaseLoader("https://striim.com/docs/AWS/StriimForSnowflake/en/configure-snowflake.html"),
595
+ WebBaseLoader("https://striim.com/docs/AWS/StriimForSnowflake/en/configure-your-source.html"),
596
+ WebBaseLoader("https://striim.com/docs/AWS/StriimForSnowflake/en/choose-how-striim-will-connect-to-your-database.html"),
597
+ WebBaseLoader("https://striim.com/docs/AWS/StriimForSnowflake/en/create-new.html"),
598
+ WebBaseLoader("https://striim.com/docs/AWS/StriimForSnowflake/en/configure-your-firewall-to-allow-striim-to-connect-to-your-database.html"),
599
+ WebBaseLoader("https://striim.com/docs/AWS/StriimForSnowflake/en/configure-port-forwarding-in-your-router-to-allow-striim-to-connect-to-your-database.html"),
600
+ WebBaseLoader("https://striim.com/docs/AWS/StriimForSnowflake/en/subscribe-to-striim-for-snowflake.html"),
601
+ WebBaseLoader("https://striim.com/docs/AWS/StriimForSnowflake/en/create-a-striim-for-snowflake-service.html"),
602
+ WebBaseLoader("https://striim.com/docs/AWS/StriimForSnowflake/en/create-a-pipeline.html"),
603
+ WebBaseLoader("https://striim.com/docs/AWS/StriimForSnowflake/en/connect_target.html"),
604
+ WebBaseLoader("https://striim.com/docs/AWS/StriimForSnowflake/en/select-your-source.html"),
605
+ WebBaseLoader("https://striim.com/docs/AWS/StriimForSnowflake/en/connect-to-your-source-database.html"),
606
+ WebBaseLoader("https://striim.com/docs/AWS/StriimForSnowflake/en/connect_source-new-mariadb.html"),
607
+ WebBaseLoader("https://striim.com/docs/AWS/StriimForSnowflake/en/connect_source-new-mysql.html"),
608
+ WebBaseLoader("https://striim.com/docs/AWS/StriimForSnowflake/en/connect_source-new-oracle.html"),
609
+ WebBaseLoader("https://striim.com/docs/AWS/StriimForSnowflake/en/connect_source-new-postgresql.html"),
610
+ WebBaseLoader("https://striim.com/docs/AWS/StriimForSnowflake/en/connect_source-new-sql-server.html"),
611
+ WebBaseLoader("https://striim.com/docs/AWS/StriimForSnowflake/en/select-schemas-and-tables-to-sync.html"),
612
+ WebBaseLoader("https://striim.com/docs/AWS/StriimForSnowflake/en/mask-data--optional-.html"),
613
+ WebBaseLoader("https://striim.com/docs/AWS/StriimForSnowflake/en/select-key-columns--optional-.html"),
614
+ WebBaseLoader("https://striim.com/docs/AWS/StriimForSnowflake/en/when-target-tables-already-exist.html"),
615
+ WebBaseLoader("https://striim.com/docs/AWS/StriimForSnowflake/en/add-the-tables-to-table-groups--optional-.html"),
616
+ WebBaseLoader("https://striim.com/docs/AWS/StriimForSnowflake/en/additional_settings-settings.html"),
617
+ WebBaseLoader("https://striim.com/docs/AWS/StriimForSnowflake/en/review.html"),
618
+ WebBaseLoader("https://striim.com/docs/AWS/StriimForSnowflake/en/monitor-pipelines.html"),
619
+ WebBaseLoader("https://striim.com/docs/AWS/StriimForSnowflake/en/manage-pipelines.html"),
620
+ WebBaseLoader("https://striim.com/docs/AWS/StriimForSnowflake/en/using-the-striim-cloud-console.html"),
621
+ WebBaseLoader("https://striim.com/docs/AWS/StriimForSnowflake/en/add-users.html"),
622
+ WebBaseLoader("https://striim.com/docs/AWS/StriimForSnowflake/en/internal-wip--using-okta-with-striim-cloud.html"),
623
+ WebBaseLoader("https://striim.com/docs/AWS/StriimForSnowflake/en/upgrade-the-instance-size.html"),
624
+ WebBaseLoader("https://striim.com/docs/AWS/StriimForSnowflake/en/monitor-the-service-s-virtual-machine.html"),
625
+ WebBaseLoader("https://striim.com/docs/AWS/StriimForSnowflake/en/using-the-striim-for-snowflake-rest-api.html"),
626
+ WebBaseLoader("https://striim.com/docs/AWS/StriimForSnowflake/en/stop-a-service.html"),
627
+ WebBaseLoader("https://striim.com/docs/AWS/StriimForSnowflake/en/security.html"),
628
+ # Striim for StreamShift
629
+ WebBaseLoader("https://www.striim.com/docs/StreamShift/en/getting-started-with-streamshift.html"),
630
+ WebBaseLoader("https://www.striim.com/docs/StreamShift/en/understanding-database-migration-and-replication.html"),
631
+ WebBaseLoader("https://www.striim.com/docs/StreamShift/en/lift-and-shift-versus-ongoing-synchronization.html"),
632
+ WebBaseLoader("https://www.striim.com/docs/StreamShift/en/supported-sources-and-targets.html"),
633
+ WebBaseLoader("https://www.striim.com/docs/StreamShift/en/streamshift-workflow-overview.html"),
634
+ WebBaseLoader("https://www.striim.com/docs/StreamShift/en/prerequisite-setup-for-sources-and-targets.html"),
635
+ WebBaseLoader("https://www.striim.com/docs/StreamShift/en/connecting-with-sources-and-targets-over-the-internet.html"),
636
+ WebBaseLoader("https://www.striim.com/docs/StreamShift/en/using-an-ssh-tunnel-to-connect-to-a-source-or-target.html"),
637
+ WebBaseLoader("https://www.striim.com/docs/StreamShift/en/cosmos-db-setup.html"),
638
+ WebBaseLoader("https://www.striim.com/docs/StreamShift/en/mysql---mariadb-setup.html"),
639
+ WebBaseLoader("https://www.striim.com/docs/StreamShift/en/oracle-setup.html"),
640
+ WebBaseLoader("https://www.striim.com/docs/StreamShift/en/postgresql-setup.html"),
641
+ WebBaseLoader("https://www.striim.com/docs/StreamShift/en/sql-server-setup.html"),
642
+ WebBaseLoader("https://www.striim.com/docs/StreamShift/en/migrating-a-database-with-streamshift.html"),
643
+ WebBaseLoader("https://www.striim.com/docs/StreamShift/en/subscribe-to-streamshift-in-the-aws-marketplace.html"),
644
+ WebBaseLoader("https://www.striim.com/docs/StreamShift/en/subscribe-to-streamshift-in-the-microsoft-azure-marketplace.html"),
645
+ WebBaseLoader("https://www.striim.com/docs/StreamShift/en/subscribe-to-streamshift-in-the-google-cloud-marketplace.html"),
646
+ WebBaseLoader("https://www.striim.com/docs/StreamShift/en/create-a-streamshift-service.html"),
647
+ WebBaseLoader("https://www.striim.com/docs/StreamShift/en/create-a-streamshift-project.html"),
648
+ WebBaseLoader("https://www.striim.com/docs/StreamShift/en/choose-your-migration-type.html"),
649
+ WebBaseLoader("https://www.striim.com/docs/StreamShift/en/select-and-connect-to-your-source-database.html"),
650
+ WebBaseLoader("https://www.striim.com/docs/StreamShift/en/configure-ssl.html"),
651
+ WebBaseLoader("https://www.striim.com/docs/StreamShift/en/select-and-connect-to-your-target-database.html"),
652
+ WebBaseLoader("https://www.striim.com/docs/StreamShift/en/select-what-to-migrate.html"),
653
+ WebBaseLoader("https://www.striim.com/docs/StreamShift/en/understanding-the-assessment-and-compatibility-reports.html"),
654
+ WebBaseLoader("https://www.striim.com/docs/StreamShift/en/how-the-assessment-score-is-calculated.html"),
655
+ WebBaseLoader("https://www.striim.com/docs/StreamShift/en/how-the-compatibility-score-is-calculated.html"),
656
+ WebBaseLoader("https://www.striim.com/docs/StreamShift/en/customize-the-migration-and-migrate-the-schema.html"),
657
+ WebBaseLoader("https://www.striim.com/docs/StreamShift/en/migrate-the-data.html"),
658
+ WebBaseLoader("https://www.striim.com/docs/StreamShift/en/stop-migration.html"),
659
+ WebBaseLoader("https://www.striim.com/docs/StreamShift/en/adding-users-to-a-streamshift-service.html"),
660
+ WebBaseLoader("https://www.striim.com/docs/StreamShift/en/monitoring-a-streamshift-service.html"),
661
+ WebBaseLoader("https://www.striim.com/docs/StreamShift/en/streamshift-1-0-0-release-notes.html"),
662
+ WebBaseLoader("https://www.striim.com/docs/StreamShift/en/contact-streamshift-support.html"),
663
+ # General webpage info
664
+ WebBaseLoader("https://www.striim.com/company/"),
665
+ WebBaseLoader("https://www.striim.com"),
666
+ WebBaseLoader("https://www.striim.com/product/striim-cloud/"),
667
+ WebBaseLoader("https://www.striim.com/product/striim-platform/"),
668
+ WebBaseLoader("https://www.striim.com/product/bigquery/"),
669
+ WebBaseLoader("https://www.striim.com/product/databricks/"),
670
+ WebBaseLoader("https://www.striim.com/product/snowflake/"),
671
+ WebBaseLoader("https://www.striim.com/product/snowflake/#"),
672
+ WebBaseLoader("https://www.striim.com/partners/striim-and-aws/"),
673
+ WebBaseLoader("https://www.striim.com/google-cloud-and-striim/"),
674
+ WebBaseLoader("https://www.striim.com/partners/striim-and-microsoft-azure/"),
675
+ WebBaseLoader("https://www.striim.com/product/databricks/"),
676
+ WebBaseLoader("https://www.striim.com/partners/striim-and-snowflake/"),
677
+ WebBaseLoader("https://www.striim.com/pricing/"),
678
+ WebBaseLoader("https://www.striim.com/connectors/"),
679
+ WebBaseLoader("https://www.striim.com/resources/"),
680
+ WebBaseLoader("https://www.striim.com/blog/"),
681
+ WebBaseLoader("https://www.striim.com/resources/"),
682
+ WebBaseLoader("https://www.striim.com/company/events/"),
683
+ WebBaseLoader("https://www.striim.com/services-support/"),
684
+ WebBaseLoader("https://www.striim.com/careers/"),
685
+ WebBaseLoader("https://www.striim.com/customers/"),
686
+ WebBaseLoader("https://www.striim.com/partners/"),
687
+ WebBaseLoader("https://www.striim.com/company/newsroom/"),
688
+ WebBaseLoader("https://www.striim.com/contact/")
689
+ ]
690
+ documents = []
691
+ for loader in loaders:
692
+ documents.extend(loader.load())
693
+ save_docs_to_jsonl(documents,'striim_docs.jsonl')'''
694
+
695
+ # Split the documents into smaller chunks
696
+ text_splitter = RecursiveCharacterTextSplitter(chunk_size=1000, chunk_overlap=500)
697
+ docs = text_splitter.split_documents(documents)
698
+
699
+ # Convert the document chunks to embedding and save them to the vector store
700
+ # vectordb = Chroma.from_documents(docs, embedding=OpenAIEmbeddings(), persist_directory="./data")
701
+ vectordb = FAISS.from_documents(docs, embedding=OpenAIEmbeddings())
702
+
703
+ # vectordb.persist()
704
+
705
+ # create our Q&A chain
706
+ pdf_qa = ConversationalRetrievalChain.from_llm(
707
+ ChatOpenAI(temperature=0, model_name='gpt-3.5-turbo'),
708
+ retriever=vectordb.as_retriever(search_type="similarity", search_kwargs={'k': 4}),
709
+ return_generated_question=True,
710
+ return_source_documents=True,
711
+ verbose=False,
712
+ )
713
+
714
+ # Function to query Google if user selects allow internet access
715
+ def get_query_from_internet(user_query, temperature=0):
716
+ delimiter = "```"
717
+ # Checking if user query is flagged as inappropriate
718
+ response = openai.Moderation.create(input=user_query["question"])
719
+ moderation_output = response["results"][0]
720
+
721
+ if moderation_output["flagged"]:
722
+ return "Your query was flagged as inappropriate. Please try again."
723
+
724
+ search = GoogleSearchAPIWrapper()
725
+
726
+ tool = Tool(
727
+ name="Google Search",
728
+ description="Search Google for recent results.",
729
+ func=search.run,
730
+ )
731
+ llm = ChatOpenAI(temperature=0, model_name='gpt-3.5-turbo')
732
+ tools = load_tools(["requests_all"])
733
+ tools += [tool]
734
+ agent_chain = initialize_agent(
735
+ tools,
736
+ llm,
737
+ agent=AgentType.ZERO_SHOT_REACT_DESCRIPTION,
738
+ verbose=True,
739
+ handle_parsing_errors="Check your output and make sure it conforms!"
740
+ )
741
+ return agent_chain.run({'input': user_query})
742
+
743
+
744
+ # Front end web application using Gradio
745
+ chat_history = []
746
+ CSS ="""
747
+ .contain { display: flex; flex-direction: column; }
748
+ #component-0 { height: 100%; }
749
+ #chatbot { flex-grow: 1; overflow: auto;}
750
+ """
751
+
752
+ with gr.Blocks(theme='nuttea/Softblue', css=CSS) as demo:
753
+ image = gr.Image('image-dark.png', height=47, width=200, show_label=False, show_download_button=False)
754
+ chatbot = gr.Chatbot(show_label=False, height=300)
755
+ msg = gr.Textbox(label="Question:")
756
+ examples = gr.Examples(examples=[['What\'s new in Striim version 4.2.0?'], ['My Striim application keeps crashing. What should I do?'], ['How can I improve Striim performance?'], ['It says could not connect to source or target. What should I do?']], inputs=msg, label="Examples")
757
+ submit = gr.Button("Submit")
758
+
759
+ with gr.Accordion(label="Advanced options", open=False):
760
+ slider = gr.Slider(minimum=0, maximum=1, step=0.01, value=0, label="Temperature", info="The temperature of StriimGPT, default at 0. Higher values may allow for better inference but may fabricate false information.")
761
+ internet_access = gr.Checkbox(value=False, label="Allow Internet Access?", info="If the chatbot cannot answer your question, this setting allows for internet access. Warning: this may take longer and produce inaccurate results.")
762
+
763
+
764
+ def user(query, history, allow_internet):
765
+ if allow_internet:
766
+ # Get response from internet-based query function
767
+ result = get_query_from_internet({"question": query, "chat_history": chat_history}, temperature=slider.value)
768
+ answer = result
769
+ else:
770
+ # Get response from QA chain
771
+ result = pdf_qa({"question": query, "chat_history": chat_history})
772
+ answer = result["answer"]
773
+
774
+ # Append user message and response to chat history
775
+ history.append((query, answer))
776
+ return gr.update(value=""), history
777
+
778
+ # The msg.submit() now also depends on the status of the internet_access checkbox
779
+ msg.submit(user, [msg, chatbot, internet_access], [msg, chatbot], queue=False)
780
+ submit.click(user, [msg, chatbot, internet_access], [msg, chatbot], queue=False)
781
+
782
+ if __name__ == "__main__":
783
+ # demo.launch(debug=True)
784
+ demo.launch(debug=True, share=True)
785
+
786
+
787
+