Intelligent chatbots, large language models, and generative answer are all the rage nowadays.
<irony>
Every week, we discover we can chat with something new: “Chat with a book”, “Chat with a YouTube video”, “Chat with a PDF file”. Sometimes, I actually wonder how far it will go. Should we prepare ourselves to chat with a lolcat meme? And what about “Chat with your neighbor! It’s easy, you just need to put your neighbor in a .zip file, upload it in our web page and you can start chatting with them! (Legal notice: any misuse will result in the closure of the service and you will not be able to chat with your neighbor ever)“?
</irony>
Beyond all the excitement on this subject, there is a real need for chatbots, and very relevant use cases. Any organisation willing to make a large set of information accessible to its employees, customers, users, or partners, can benefit from a chatbot.
Unfortunately, most of the existing solutions are either pretty low level APIs, so it takes a lot of time to build something useful, or they are hosted on their own web site, so they cannot be integrated easily in your own application.
In this article, we will see how to build a chatbot that can answer questions about a set of documents from the indexing of the original data up to the deployment of the chatbot on your application with a single solution: Nuclia.
Create a chatbot in 3 steps
-
Step 1: Create a Nuclia account
Go to Nuclia Cloud and create your account. Once your account is created, you can access your dashboard. On the dashboard home page, click on Publish to make your Knowledge Box public. -
Step 2: Upload your files
Go to the Resources list, click on Upload and select Upload files. Then drag&drop your files and click on Add.Upload modal
Indexation might take few minutes depending on the size of your documents.
In this example, I am uploading few user manuals explaining how to repair bikes. -
Step 3: Generate a widget
Go to Widgets, and enable the Answer generation and the Only answers features.Widget editor options
You obtain a snippet of HTML code that you can copy and paste in your application or web site, whatever technical stack it is based on.
And that’s it! Your users can now ask any question about fixing their bike.

By clicking on the “Chat with your docs” button, users can engage an actual discussion with your chatbot.

And the nice thing is each answer comes with the references to the original documents, and by clicking on it, the document opens directly at corresponding paragraph.

What kind of contents can I index?
Nuclia can index any kind of unstructured data: videos, audio, web pages, plain text, PDF, Word, Excel, PowerPoint, etc.
You can even push a YouTube URL and it will index the video. And it does not matter if this YouTube video does not have transcript because for any non-textual content, like video or audio contents, Nuclia performs an automatic speech-to-text conversion.
Ok, but does it fit with real production use cases?
If you plan to index 15,000 documents and you know that 5% of them are updated every day, maybe you feel like the “drag&drop and it’s done” thing will fall short for you.
Fortunately Nuclia provides an API which allows you to automate the indexing of your documents. From the dashboard, you can generate an API key and then use it to push documents to your Nuclia Knowledge Box.
This kind of automation can be integrated in your CI/CD pipeline, and it can be implemented in any language (although Nuclia provides a Python SDK and a JavaScript/TypeScript SDK, you can make HTTP requests to the Nuclia API with any language).
Read more “How to” tutorials on our blog!