Requirements
To use this example, you will need the following:-
Within your IBM Cloud account, an IBM watsonx.data subscription that contains a Milvus service instance.
- Create an IBM Cloud account. To complete this example, you must create an API key for your IBM Cloud account.
- Create an IBM watsonx.data subscription in your IBM Cloud account.
-
Create a Milvus service instance within your IBM watsonx.data subscription plan. This instance
must contain a database, a collection, and an index to store and manage the data that is generated by Unstructured.
To complete this example, you will need the following settings for the Milvus service instance:
- The instance’s GRPC host value.
- The instance’s GRPC port value.
- The name of the target database on the instance.
- The name of the target collection in the database.
- The name of the target index in the collection.
-
Within your Unstructured account, a workflow that contains a Milvus destination connector.
- Create an Unstructured account.
- Create a Milvus destination connector in your Unstructured account.
- Create a custom workflow that contains the Milvus destination connector in your Unstructured account. The workflow must generate embeddings. The workflow’s Embedder node’s selected embedding model provider must be IBM watson.ai. The node’s selected embedding model must match the embedding model that you will specify later in Step 2. Be sure to run the workflow to have Unstructured generate the data and store it in your Milvus instance’s database.
Step 1: Add an IBM watsonx Orchestrate subscription to your IBM Cloud account
If you already have an IBM watsonx Orchestrate subscription, then skip ahead to Step 2.- Log in to your IBM Cloud account.
- On the sidebar, click the Resource list icon. If the sidebar is not visible, click the Navigation Menu icon to the far left of the top navigation bar.
- Click Create resource.
- With IBM Cloud catalog selected, search for and select watsonx Orchestrate.
- Complete the on-screen instructions to finish creating the IBM watsonx Orchestrate subscription.
Step 2: Create the chat app in IBM watsonx Orchestrate
In this step, you use IBM watsonx Orchestrate to create a chat app. This chat app allows you to ask questions about your organization’s documents and semi-structured data. This data is stored in your Milvus instance’s database and was generated by Unstructured in a format that is well-suited for your chat app.-
Open your IBM watsonx Orchestrate subscription, if it is not already open. To do this:
a. Log in to your IBM Cloud account.
b. On the sidebar, click the Resource list icon. If the sidebar is not visible, click the Navigation Menu icon to the far left of the top navigation bar.
c. In the list of resources, expand AI / Machine Learning, and then click the target watsonx Orchestrate subscription.
d. Click Launch watsonx Orchestrate.
- If the Chat page is not already open, click the Open the main menu icon to the far left of the top navigation bar, and then click Chat.
- Toward the bottom of the sidebar, click Create new agent.
- On the Create an agent page, with Create from scratch already selected, enter some Name and Description for the agent, and then click Create.
- Under Knowledge source, in the Start by adding knowledge tile, click Choose knowledge.
- On the Select source page, click Milvus, and then click Next.
-
On the Connect Milvus page, specify the following settings:
a. For GRPC host, enter the GRPC host value for the Milvus service instance within your IBM watsonx.data subscription.
b. For GRPC port, enter the GRPC port value for the instance.
c. For Choose an authentication type, select Basic authentication.
d. For Username, enteribmlhapikey
.
e. For Password, enter the API key for your IBM Cloud account.
f. Click Next.
-
On the Select index page, specify the following settings:
a. For Database, select the name of the target database on the Milvus service instance within your IBM watsonx.data subscription.
b. For Use Collection or Alias, select Collection.
c. For Collection, select the name of the target collection in the database.
d. For Index, select the name of the target index in the collection.
e. For Embedding model, select the name of the embedding model that matches the one that you specified earlier in your Unstructured workflow.
f. For Title, select element_id.
g. For Body, select text.
h. Click Next.
- On the Description page, enter some description for the agent, and then click Save.
- In the list of pages, click Behavior.
- Switch on Chat with documents.
- Click Deploy.
- On the Pre-deployment summary page, click Deploy.
Step 3: Run the chat app
In this step, you ask questions about your organization’s source documents and semi-structured data. The chat app then attempts to answer your questions by searching the related data that Unstructured generated and stored in your Milvus instance’s database.- If the Chat page is not already open in IBM watsonx Orchestrate, click the Open the main menu icon to the far left of the top navigation bar, and then click Chat.
- In the sidebar, in the Agents list, select the name of the agent that you created in the previous step.
- In the Type something box, enter a question, and then press
Enter
. - The agent will provide an answer.
- Keep asking as many questions as you want to.