Hope you guys enjoy this video! RAG is without a doubt one of the most important features of Langchain and Flowise. Please hit the like button and remember to subscribe. This greatly supports my channel.
This video tutorial series is the best AI workflow/high level concept instructional I have experienced. I've worked in bits and pieces on all these things, with many of these tools, but visualizing everything "together" makes this an exceptional tutorial. Thank you for sharing this. I am officially a flowise fan now.
This is most informative and useful. The rate at which you bring it up to speed is really something and RAG is the killer app feature I think. I am heartily impressed with flowise now. I was admittedly something of a sceptic having worked on other 'no code / low code' solutions in the past but you've made this easy to follow and implement and I can see it working for myself. I've looked into docker implementation with flowise which also seems very sound. Many other use cases are now open to us. Thank you Leon.
I ended up creating 2 document stores. One with detailed knowledge and another with more specific additional info. I modified my chat flow to add another document retriever and it works well. Is this a good approach creating smaller document stores with specific categories of information?
I love the fact that you keep on updating your videos with the latest design patterns. E.g. I see that now you advise to create a separate chatflow for upserting(also callable as a web service ) and a separate one for the actual chat agent.
Another great tutorial. The pairing of topics on Flowise and Langchain is highly beneficial. Understanding Flowise first showcases the possibilities and allows for quick prototyping. Diving into coding after that enhances both my comprehension and execution. Huge fan of your work!
Thank you so much for your videos! I'm a no code founder and I am always looking for videos that can help me bring solutions to my client base with my minimal coding experience your videos are highly appreciated!
Also, one undersold aspect to this product is that it is teaching me (passively) how all of this stuff works. Vector db, embeddings, pinecone, context windows, chunkifying. It all makes more sense when it is visualized in a block diagram.
Yes, love the videos Leon! Keep up the great work. Would love to see your videos progress into agents calling multiple retrieval threads and tools using chain selection! Not many good resources out there on that! I know you've done in in python and js, but would love to see the Flowise equivalent!
Thank you Leon, I hope you consider creating a video demonstrating how to build a bot capable of responding to queries from users by fetching data from Google Analytics, such as clicks and views, and so on. I am pretty sure it's a good use case as every business has a Google Analytics account and this bot will be helpful to create for almost everyone watching who has a website. This would greatly enhance understanding of Flowise's capabilities, as it will be covering many aspects it offers. like custom tools, fetching multiple types of data, interaction with 3rd party APIs, and so on. This would serve as a comprehensive resource for creating advanced chatbot applications using flowise.
@@leonvanzyl quick question..for larger pdfs im having trouble for it grasping the full document, is that related to the recursive character splitter?...as you say play with the parameters. i can have a 26 page document I want to injest...what would be the best way to to chunk and upsert that for the best result
Thanks for that video! I was wondering how to update points in Pinecone. I am trying do upsert blogposts to my vector database. Once they change, the points should also be update. In the current setup, everytime I re-run the upserting process, new vectors will be created in addition to the old ones (= duplicate data, from which some is old).
Hi thanks for these tutorials, they honestly are excellent. One question I of course have is in regards to privacy. What tips would suggest to maintain privacy for 1.) the information being added and 2.) the conversation? What is most secure way to interact with sensitive information? Thanks for all the help, been searching everywhere trying to figure this all out.
Hi @Leon, on FlowiseAI website it's mentioned Digital Ocean as deployment options. My question is how could I add my AI assistant created in FlowiseAI into my github repo that has my website structure. Also, is it possible at some point to download docs in pdf format (for example) and inject them somewherelse for example in a "my user account" that I have created in my repo? Thanks!
Check out my web embed video on adding the chatbot to any website. I don't have a video on deploying to digital ocean but the Flowise docs should guide you through the process.
this is really awsome especially Cheerio web scraper . you have already shared a video about using llama as an LLM , and it will be great to share a video about using llama as an embedding as well , so we will have an end to end open scouse chatbot
@@leonvanzyl Ollama embedding node on the Flowise requires a base URL and the model , can you please let me know how to get the base URL of Ollama from Replicate ?
Thank you Leon for all your hard work and time invested in educating others! Couple of questions: 1) Is there a possibility to have end user upload documents to chat? 2) Is there a way of adding metadata dynamically when upsering documents? For example, to add the document title as metadata, so the vectors can be filtered after it later in the vector database.
These tutorials are amazing. This tool is amazing. I was up past midnight for the past two nights geeking out with this thing. I would LOVE for you to make a video on how we can do speech-text-speech using microphone and 11 labs. Also, I would love to have an input and output for Touchdesigner so that I can play with my droids as they make realtime stable diffusion artwork and stuff.
I followed a guide for retrieving documents from Confluence. After the activation process concludes, the system displays buttons next to the text. Clicking any of these buttons triggers a popup within Flowise, showcasing information in JSON format. This popup also includes a URL, which seems to indicate the source page of the information. However, the URL is presented in a format that emphasizes the ending, showing from which page the information was extracted. How can I adjust the settings to obtain URL links in the format shown in your example?
Many thanks for the excellent tutorial. I have set up the automation and noticed that the chunks repeat themselves and only the time is changing. I'm not a programmer so I'm wondering if this is normal or if it's using up unnecessary capacity and how I can deal with it. ------- Debbuger example: [chain/end] [1:chain:RunnableSequence > 13:chain:RunnableSequence] [25.08s] Exiting Chain run with output: { XY [chain/end] [1:chain:RunnableSequence] [26.96s] Exiting Chain run with output: { XY (THE SAME CHUNK) (... / it sends the same chunk up to four times)
Hi my documents are not being read successfully. What could be the issue ? I notice after i upsert my data, it returns a popup, unrecognisable symbols, even though I am noted that upsert was successful. Please help
If I try to use Ollama with Llama 2 and Ollama Embeddings, it get this error when i upsert: "Request to Ollama server failed: 500 Internal Server Error" Any tips? Thx
Hey, thanks for the tutorial. One question I have is how do I update the file in the vector store? Since there is no direct Id related to the file only vector data?
@leonvanzyl, first and foremost, thanks, mate, for all the content you produce. Quick question, I'm getting a message when I run the chat that the "Ending node must be either a Chain or Agent". I followed the video exactly how you did it but having errors. Hope you can help.
You're welcome 🤗. That's correct, the ending node should always be either a chain or agent. Check out the Getting Started video (first video in the series). It's very hard to say what the issue could be without seeing your flow.
Hi , Thanks for your course... I've tried to use a pdf as data source and it worked perfectly for the text inside, but neither my pdf loader nor my vector store are able to get the url from the links in the PDF, any idea ?
Hi Leo...and thank you for your videos.... I created a chatflow rag with chroma. I do embeddings with diversified collectionName. The client sets the collectionName at runtime and gets relevant answers. I would like to create a pipeline where through scripts, periodically, I add, update collectionName with data. from inside flowise I can't access the collectionName created externally..how could I do it?
i prefer using claude-sonnet instead of GPT-3.5. my question is, its possible to use an openAI embedding with sonnet chat model ?? because i can not see any embedding model of claude anthropic. Thank you in advance Leon !! amazing videos
hello @Leon have you even encountered a use case where you want to write files from a render web service and then read those files from a different render web service? Currently render does not allow for access of shared drives, so I wonder if you have encountered and solved this problem?
Hello León, its possible read local files for example a code project without clicking upsert each time we do a change on the code, also the possibility flowise write ob this files? Also why no use free vector store like chroma? Thanks you
it show error when I click upsert button , although I exactly what you do , I upload a pdf file from my harddrive connect to my pc. Please help me solve the problem
@@leonvanzyl it show pinecone authorization error. Your api key are rejected and check your cofiguration. I put working upadate api key for openai and pinecone what is wrong with it
Fantastic tutorials! I do have a question though. I created a chat flow using - Recursive Character text splitter, In-memory vector store and Conversational Retrieval QA Chain. I did the upsert and then tried a simple query. I always get the same response- “Hmm, I'm not sure.” What am I missing? Thanks for your help!
Maybe a dumb question, but what I do not understand is how you keep data up-to-date. Lets say I use Flowise to take a Airtable database put it in Pinecone to make it "smart", so I can chat with it. How do I keep the database up to date, how can I manage, that when something is updated in the airtable, it is being changed in the vectored database? If I press upsert data just gets Re-added, so not replaced but adds the data AGAIN. How does this work?
It is the most important subject that interests me. Thanks.if in one of your videos, you show us the use in flowise the use of an llm other than open ai. that would be great
We will have a look at using other models as well. In practice, OpenAI is without a doubt the most commonly used model in industry, therefore I'll be using it primarily. Other topics, like function calling, require OpenAI as well 👍
how do you get it to work with existing data in a vector db? I tried recreating the same node graph, and when asking the chatbot, it tells me it doesn´t know the answer(the default response if there is no context), yet from what i can see from the return source documents option, it does retrieve the right chunks, it just doesn´t seem to be able to read them? if i ask it to just print {context} as a response, it will give me the chunks, but it won´t be able to answer despite them being there
Thank you for your tutorial! I built an internal chatbot that uses Confluence documentation as a data source. One question that I have, though. Since technical documentation is never comprehensive enough to answer all the questions, I would like to add a feedback loop to my chatbot. In other words, I want the user to ask a question, get an answer, and then be able to give a "correct answer" that should be "learned" by the model itself (not just to be kept in session context - another user asking a similar question should receive the updated, corrected answer already). Is it possible to do this with Flowise? Do you have any valuable references or another video on this topic?
Hi Leon, great video as always. So do I create different upserts for each type of document loader using the same pinecone index and then create the retrieving chatbot using the same pinecone index for the retrieval flow?
In your last flowise video you used upstash for memory where it creates as if it were a thread. To my question is when what is stored becomes greater than the context limit of the model used how to act?
Hi there, I'm not sure I understand the question. Conversation memory and knowledge bases are unrelated. Apologies, maybe you could rephrase the question? I honestly want to assist.
@@leonvanzyl We have the conversation memory and the vector database data right? Isn't the conversation memory similar to the openai assistant threads? My question is whether in a conversation in which I am saving the data in Upstash and the amount exceeds the model's context limit, the model would not cause truncation to retrieve information?
Hello, I'm having 2 issues I don't know how to fix it or what to change: 1: I ask a specific question and it answers way too many things instead of just the specific question and 2: it starts asking and answering questions by itself not even related to what I specifically asked .
great presentation right there leon. is it possible to keep updating the data source every day without interupting the chatbot or do i need to stop the operation if i ever want to add new datas?
Hi Leon, thank you so much for your videos; they are excellent. Thanks for sharing your knowledge. Do you know if it’s possible to build a solution in Flowise that can process images?
Hi there, thanks for the great video. I have one question regarding web scraping: what is the refresh rate of the urls? In other platforms it is possible to refresh the urls daily and I was wondering if it possible to do the same using Flowise. If yes, I have a follow-up question: how does this interact Pinecone? Will it consume tokens every time it refreshes the urls? Thanks!
Unfortunately there is no way to automatically refresh the data / trigger the upserts within FW. I use services like n8n or Make.com to call the FW Upsert API at certain intervals. I think this would be a good topic for a video... I'll post a video soon 👍
Hi Leon, great tutorial!! Just to cover a slightly different scenario, how do you manage not to duplicate records when running multiple times the load process on vector databases like for example Chromadb? Thank you!!
I Leon, quick question, using the pinecone vector store there is a dropdown at the bottom, default is pinecone retriever and the other option is pinecone vector store. Am I correct in assuming that I use the vector store option to upsert and the retriever option afterwards to retrieve data?
Amazing content!! I wanted to ask if it's possible to make a chatbot which is writing the information of the customer in google sheets documents? Is it possible to make it happen using FloWise?
Great video as always. I get a memory issue, which I am assuming is due to the fact that I am on the lowest render server plan. Seems to happen when I try to upset more than a couple url links that have been scraped.
Love your work. I am struggling a bit with understanding the new "Additional Parameters" section of the node you demoed - Conversational Retrieval QA Chain. What are these variables they are forcing me to set about? We didn't need to define variables before. Thanks!
I'm guessing you're referring to the chat history and context variables. Try not to remove those when changing the system message 😁. Chat history is used to keep track of the conversation history. Context, as explained in this video, is a placeholder for the context.
@@leonvanzyl you guessed right. Thank you. So just to be clear - the default text work well as is - right? I am picky about my system messages. I still feel like I need to understand this new feature better😀
sorry I keep getting this errors and I look and online and there's nothing about them, now I'm getting "Error: overloaded" when trying to chat or trying to upsert
Hi Leon. I have adapted the chatFlow to scrape another site using the Scrape XML Sitemap method. In the URL I have entered the sitemap url and used fetch links button. This brings back a list of urls. I then press save. I then save the chatFlow. When I use upsert I get the error 'No Relative Links Found'. What piece of the jig saw am I missing please ?
Hi Leon, Quick question, I see you have chosen the in-memory Vector store from vector stores new. My Vector Stores New is actually empty and only the deprecated vector stores are available. I did update Flowise from your first video in this series. Is there a very recent update perhaps?
Hi Leon. I am getting "Error: vectorsService.upsertVector - Error: Error: An error occurred while fetching the blob" using any vector store, pinecone, chromadb and in memory vector store
I am really grateful for the knowledge you give. It is really wonderful. Thank you. I noticed that this tutorial doesn't work on render but it works on my desktop. Is there a way that I can configure it to work on Render Cloud?? I appreciate your help. Thanks
Great example, thank you Leon! I find the example with crawling via Cherio and the sitemap super exciting. Do you think you can also cover a large website with >10,000 URLs with this? And do you see an option to include several websites at once? Thank you!
Thank you! For large websites I recommend creating a CSV extract from the database and to upload that CSV instead. Scraping large websites are a terrible idea 😁
Excellent video! How come I can't hookup a "Vector Store Retriever" to the "Conversational Retrieval QA Chain", but I can hook it up to "Multi Retrieval QA Chain"? Both say they accept "Vector Store Retriever". I don't see any way to use a prompt template with "Multi Retrieval QA Chain", so that is why I wanted to try using the conversational retrieval chain.
These tutorials are great, but is anyone else finding the bot just struggles with the PDF? It's really poor for me. I've also found "how can i deploy flowise to render?" doesn't work but "How can I deploy Flowise to Render?" does, so it seems you have to be very precise for this to work which isn't realistic..? Unless I'm missing something? "version": "1.8.0",
i did everything exactly as you did, when i try to ask my pdf a question from content further in the document it just throws hmm i dont know. infos from the beginning work fine. seems like it just ignores the embedded info and just gets the first few thousand tokens. a bit frustrating but i tried other chunk size and embedding models, nothing works :(
Sorry to hear that you're having issues. RAG is a reliable method for fetching documents and you really shouldn't be having issues. It's hard to pinpoint what the issue could be based on the information you provided. I suggest that you try to use Pinecone instead of buffer memory. You can also check that the Pinecone database contains the information that you're querying. Also ensure that the information in the document is text and not images. The PDF Loader is not able / effective at extracting text from images. You might be experiencing issues with buffer memory due to hardware limitations. Let us know if you come right 👍.
@@leonvanzyl thank you very much for your answer! Initially i had the same problem also with pinecone. I then, through trial and error, found that for smaller .txt files, like the one you had in the older tutorial video, a chunk size of about 200 with overlap 50 worked well, but not for the larger pdf files. There i only started to not get the hmm, i dont know message when i increased the chunk size to 3000 with overlap 300. the pdfs were medical guidelines that did not have a lot of images, and it was ocr scanned. My hardware is on the high end side, but my ssd is running thin on free space, maybe thats got something to do with it. I assume there is a lot i dont yet understand about RAG as well as llms and flowise 😅. I saw another youtube video that mentioned semantic text splitters. That seemed to make a lot more sense to me than the other text splitters, do you know if that is possible to do in flowise? Also do you have content on how metadata works for RAG? Thanks again :)
Thank You, Leon, Can you make a video on how to set up such bots for online shops where there are a lot of different products, I can not get the bot set up correctly. Because of the large number of products, it gets confused in the articles (and for the shop is important accuracy) confused in the cost and so on. Perhaps it is necessary to prepare data in a special way. I will be glad to any help.
Hi Leon. I currently have the situation that I need two knowledge-bases. First I have some static data (Knowledge in for Folder Loader) and embedded to Pinecone. But I now also have some dynamic data (events) that needs to be crawled on a daily basis from a website and be updated. (so outdated infos get removed, new crawled infos can be retrieved). Do you have a solution for that? Thank you - Roman
Flowise does not have a solution for periodically updating the Vector Store (like your example of scraping the website on daily basis). However, they do offer an API that you can call from outside of Flowise to trigger the Upsert. So what you could do is to set up a Cron job that runs the Upsert API daily. This might be a good tip to include in the next Flowise Tips and Tricks video. You can set up cron jobs for free using cron-job.org.
For some reason my LCEL page vector count was 5 when you had 370 in pinecone. I have my chunk size and overlap set the same. Still worked but confusing.
I implemented this and built a RAG application that works like a charm thanks!! But now I have the problem that I want to add a custom tool to it but it seems I have to decide whether to build my flow EITHER using the Conversational Retrieval QA chain OR a node such as OpenAI Tool Agent that will allow me to use my tool. Sorry for asking you a technical question like this here but I didn't find an answer anywhere else. Is there a way to keep the Conversational Retrieval QA Chain and enable the flow to use custom tools at the same time? Or would I really have to switch to a Retriever Tool/Custom Tool for an Agent Node...? What is the best way to build a flow that will retrieve well in Pinecone AND make intelligent use of tools? Thanks!
Only agent nodes can call tools. The OpenAI Tools Agent would be perfect for you. Check out my agents video to see how you can add RAG to the agent along with tools
@@leonvanzyl I'm a pro member of your channel now :) I found that the retrieval results of an OpenAI Tool Agent with a Retriever Tool are inferior to the response quality of the Conversational Retrievel QA Chain. My RAG flow is based on the web-scrape-qna template by Flowise so I use HTML Splitter, Cheerio, Pinecone and Conversational Retrieval QA Chain. I use a seperate flow to upsert to Pinecone and I don't use Redis at the moment. The problem is now that when I return source documents to the chat, they show up in the chat window with their relative URLs instead of the page title as is nicely seen in the screenshot in Flowise's web-scrape-qna example. When I upsert the way they show it I don't even have a metadata key in Pinecone that contains the page title... I even added a title metadata key in Pinecone with a python script but now I don't know how I get Flowise to use these titles when displaying source documents. Do you have any idea why that is? Many thanks!!
I found that the retrieval results of an OpenAI Tool Agent with a Retriever Tool are inferior to the response quality of the Conversational Retrievel QA Chain. My RAG flow is based on the web-scrape-qna template by Flowise so I use HTML Splitter, Cheerio, Pinecone and Conversational Retrieval QA Chain. The problem is now that when I return source documents to the chat, they show up in the chat window with their relative URLs instead of the page title as is nicely seen in the screenshot in Flowise's web-scrape-qna example. I don't know how I get Flowise to use these titles when displaying source documents. Do you have any idea why that is? Many thanks!!
That's a good point. I noticed that as well. The Tools Agent node is relatively new so it's possible that it's a bug. I'll pass your message on to the Flowise team as well.
@@leonvanzyl I hope you pass the message on not only about the retrieval quality but especially about the source title problem! And please note that I have that problem with the source titles with the Conversational Retrieval QA Chain, not the OpenAI Tool Agent/Retriever Tool. Many thanks!❤
Thank you for the professional and informative video. Could you please let me know if there is an option after updating Pinecone to add new information without re-starting the whole process?
Thank you for your quick response. If I understand correctly, the new information is simply uploaded to the same index in pinecone. But is there a way to detect or track a change in the website so that only the new pages that have disappeared will be scanned and uploaded to the index in pinecone.@@leonvanzyl
AutoGPT has changed a lot over the past year so I'm not exactly sure what it's capabilities are. The version of AGPT that I remember was very different to AutoGen. AutoGPT is an agent tool, where AutoGen is a developer framework for building collaborative agent solutions.
Can you provide more information on the issues please? I literally use Flowise every day and can confirm that this still works. LangSmith simply moved to settings.
So I was following the tutorial up to a point where I had to press the green button for upsert vector store and I don't have the green button :) What's up with that?
Hi Leon, A new subscriber here. I'm creating a retrieval chain with Hugging Face as a chat model, using Pinecone and a PDF loader, but I always receive the same error: Error: vectorsService.upsertVector - Error: An error occurred while fetching the blob. Do you know how I can fix it? Thanks!
Your tutorials are absolutely awesome. A question, can one build a kind of an Autogen i.e. a multi-agent framework using flow-wise? I personally would love to see that kind of an implementation?
Loving this channel! My goal is to scrape my municipal website and offer a chatbot to any of the local organizations in my community. Do I have to use node to use cherrio to scrape an entire municipal webpage?
Thanks for this great tutorial. With Pinecone, however, I have not yet understood how I can delete parts of the vector store. Is there a possibility with Flowise like upsert Reverse?
Hi Leon, quick question, When I moved to pinecone, the quality of responses deteriorated quite a lot compared to the local memory. I have tried playing with the splitting but no change. I am using a pdf doc. Would a text or word doc perhaps be better?
Your videos are rewarding,I've learned a lot.Can I ask if I can use nodes so that chatbots can both use my document and custom tool to retrieve user information via webhooks and save it to google sheet?I tried using the Open Assistant but the data was too misleading compared to the data in my document.Please help me, Thanks a lot!
Thank you for the feedback. I need a better understanding of your requirement, but it seems like something that should be achievable with Agents. We haven't covered agents in this series yet, but maybe once we go over tools and retrieval agents, it would help you
Hope you guys enjoy this video! RAG is without a doubt one of the most important features of Langchain and Flowise.
Please hit the like button and remember to subscribe. This greatly supports my channel.
please make a vedio product recommendation bot using pinecone
This video tutorial series is the best AI workflow/high level concept instructional I have experienced. I've worked in bits and pieces on all these things, with many of these tools, but visualizing everything "together" makes this an exceptional tutorial. Thank you for sharing this. I am officially a flowise fan now.
I have to agree. This is THE best tutorial series thus far. Thank you a TON for sharing this.
This is most informative and useful. The rate at which you bring it up to speed is really something and RAG is the killer app feature I think. I am heartily impressed with flowise now. I was admittedly something of a sceptic having worked on other 'no code / low code' solutions in the past but you've made this easy to follow and implement and I can see it working for myself. I've looked into docker implementation with flowise which also seems very sound. Many other use cases are now open to us. Thank you Leon.
Thank you for the feedback!
I ended up creating 2 document stores. One with detailed knowledge and another with more specific additional info.
I modified my chat flow to add another document retriever and it works well.
Is this a good approach creating smaller document stores with specific categories of information?
I love the fact that you keep on updating your videos with the latest design patterns. E.g. I see that now you advise to create a separate chatflow for upserting(also callable as a web service ) and a separate one for the actual chat agent.
Thank you.
Another great tutorial. The pairing of topics on Flowise and Langchain is highly beneficial. Understanding Flowise first showcases the possibilities and allows for quick prototyping. Diving into coding after that enhances both my comprehension and execution. Huge fan of your work!
Appreciate you. Thank you for the feedback 🙏
Danke!
Thank you very much
Thank You, Leon, for making yet another excellent video!
Thank you!
Your tutorials are gold Leon, thank you! This stuff is so clear and helpful. I'm devouring all of it and can't wait for more!
Thank you 😊
Just have to give a BIG THANKS! Im following Leon on all the socials because this is GOLDEN. Doing everything and every step from every video.
Thank you so much for your videos! I'm a no code founder and I am always looking for videos that can help me bring solutions to my client base with my minimal coding experience your videos are highly appreciated!
You're welcome 🤗
Excellent video. Particularly using Pinecone as the Vector Db
Also, one undersold aspect to this product is that it is teaching me (passively) how all of this stuff works. Vector db, embeddings, pinecone, context windows, chunkifying. It all makes more sense when it is visualized in a block diagram.
Exactly!! Once you're comfortable with the concepts you can try out my Python or JS videos 😀
18:03 return source documents on my pdf showing json. Hosted on render, with faiss. Any tips?
Thank, very informative to make my own chat on my product. Have a nice day and good health 😄
Is there a way to add a Conversational agent to this template with Serp API, so the bot can look online informational relevant to a file uploaded?
Yes, love the videos Leon! Keep up the great work. Would love to see your videos progress into agents calling multiple retrieval threads and tools using chain selection! Not many good resources out there on that! I know you've done in in python and js, but would love to see the Flowise equivalent!
Will do 👍
Thank you Leon, I hope you consider creating a video demonstrating how to build a bot capable of responding to queries from users by fetching data from Google Analytics, such as clicks and views, and so on. I am pretty sure it's a good use case as every business has a Google Analytics account and this bot will be helpful to create for almost everyone watching who has a website. This would greatly enhance understanding of Flowise's capabilities, as it will be covering many aspects it offers. like custom tools, fetching multiple types of data, interaction with 3rd party APIs, and so on. This would serve as a comprehensive resource for creating advanced chatbot applications using flowise.
Thank you. I like this example 👍
Hi Leon, thank you for all of your videos - so helpful. I've liked and subscribed and even watch ads to help support your channel!!
Thank you 😊
dude! thank you for the content you put out...keep it coming...i have learned so much from your content.
You're welcome
@@leonvanzyl quick question..for larger pdfs im having trouble for it grasping the full document, is that related to the recursive character splitter?...as you say play with the parameters. i can have a 26 page document I want to injest...what would be the best way to to chunk and upsert that for the best result
Thanks for that video! I was wondering how to update points in Pinecone. I am trying do upsert blogposts to my vector database. Once they change, the points should also be update. In the current setup, everytime I re-run the upserting process, new vectors will be created in addition to the old ones (= duplicate data, from which some is old).
Hi thanks for these tutorials, they honestly are excellent. One question I of course have is in regards to privacy. What tips would suggest to maintain privacy for 1.) the information being added and 2.) the conversation? What is most secure way to interact with sensitive information? Thanks for all the help, been searching everywhere trying to figure this all out.
Awesome tutorial, thanks so much!
Hi @Leon, on FlowiseAI website it's mentioned Digital Ocean as deployment options. My question is how could I add my AI assistant created in FlowiseAI into my github repo that has my website structure. Also, is it possible at some point to download docs in pdf format (for example) and inject them somewherelse for example in a "my user account" that I have created in my repo? Thanks!
Check out my web embed video on adding the chatbot to any website.
I don't have a video on deploying to digital ocean but the Flowise docs should guide you through the process.
@@leonvanzyl Sure, I'll take a look at that video. If I have any other questions, I'll ask them there ;) Thx!
this is really awsome especially Cheerio web scraper . you have already shared a video about using llama as an LLM , and it will be great to share a video about using llama as an embedding as well , so we will have an end to end open scouse chatbot
The embedding side of it remains the same 👍
@@leonvanzyl Ollama embedding node on the Flowise requires a base URL and the model , can you please let me know how to get the base URL of Ollama from Replicate ?
Thank you Leon for all your hard work and time invested in educating others!
Couple of questions:
1) Is there a possibility to have end user upload documents to chat?
2) Is there a way of adding metadata dynamically when upsering documents? For example, to add the document title as metadata, so the vectors can be filtered after it later in the vector database.
You're welcome!
Check out the video on using the API 👍
These tutorials are amazing. This tool is amazing. I was up past midnight for the past two nights geeking out with this thing. I would LOVE for you to make a video on how we can do speech-text-speech using microphone and 11 labs. Also, I would love to have an input and output for Touchdesigner so that I can play with my droids as they make realtime stable diffusion artwork and stuff.
Those are some awesome ideas!! Thank you.
How can we make changes to the vector data base? For example, when information on a website have changed..
Hi, have you ever solve this question? I need to. automatically update my knowledge base. too😂
No I just create a new index @@fengshi9462
I followed a guide for retrieving documents from Confluence. After the activation process concludes, the system displays buttons next to the text. Clicking any of these buttons triggers a popup within Flowise, showcasing information in JSON format. This popup also includes a URL, which seems to indicate the source page of the information. However, the URL is presented in a format that emphasizes the ending, showing from which page the information was extracted. How can I adjust the settings to obtain URL links in the format shown in your example?
Many thanks for the excellent tutorial. I have set up the automation and noticed that the chunks repeat themselves and only the time is changing. I'm not a programmer so I'm wondering if this is normal or if it's using up unnecessary capacity and how I can deal with it.
-------
Debbuger example:
[chain/end] [1:chain:RunnableSequence > 13:chain:RunnableSequence] [25.08s] Exiting Chain run with output: {
XY
[chain/end] [1:chain:RunnableSequence] [26.96s] Exiting Chain run with output: {
XY (THE SAME CHUNK)
(... / it sends the same chunk up to four times)
Hi my documents are not being read successfully. What could be the issue ? I notice after i upsert my data, it returns a popup, unrecognisable symbols, even though I am noted that upsert was successful. Please help
Incredibly helpful. Many thanks!
Excellent. Thank you.
You're welcome 🤗
Your content is always amazing!!!
Thank you very much 🙏
If I try to use Ollama with Llama 2 and Ollama Embeddings, it get this error when i upsert: "Request to Ollama server failed: 500 Internal Server Error"
Any tips?
Thx
Did you manage to fix this error? I am using LocalAI and I have the same error
Hey, thanks for the tutorial. One question I have is how do I update the file in the vector store? Since there is no direct Id related to the file only vector data?
@leonvanzyl, first and foremost, thanks, mate, for all the content you produce. Quick question, I'm getting a message when I run the chat that the "Ending node must be either a Chain or Agent". I followed the video exactly how you did it but having errors. Hope you can help.
You're welcome 🤗.
That's correct, the ending node should always be either a chain or agent.
Check out the Getting Started video (first video in the series).
It's very hard to say what the issue could be without seeing your flow.
Hi ,
Thanks for your course...
I've tried to use a pdf as data source and it worked perfectly for the text inside, but neither my pdf loader nor my vector store are able to get the url from the links in the PDF, any idea ?
Thank you sir for all of this!
Hi Leo...and thank you for your videos....
I created a chatflow rag with chroma. I do embeddings with diversified collectionName. The client sets the collectionName at runtime and gets relevant answers.
I would like to create a pipeline where through scripts, periodically, I add, update collectionName with data.
from inside flowise I can't access the collectionName created externally..how could I do it?
Great video and better series, keep on doing them.
Thank you!
Hello. How to create a rag using a file that has sensitive information? Can I use flowise and the openai model?
i prefer using claude-sonnet instead of GPT-3.5. my question is, its possible to use an openAI embedding with sonnet chat model ?? because i can not see any embedding model of claude anthropic. Thank you in advance Leon !! amazing videos
I've also been playing with Claude lately and I'm really impressed.
Going to make a dedicated Flowise and Claude video with RAG 👍.
hello @Leon
have you even encountered a use case where you want to write files from a render web service and then read those files from a different render web service?
Currently render does not allow for access of shared drives, so I wonder if you have encountered and solved this problem?
I typically use AWS S3 for my projects, especially when file sharing should be possible.
@@leonvanzyl Thanks!
Hello León, its possible read local files for example a code project without clicking upsert each time we do a change on the code, also the possibility flowise write ob this files? Also why no use free vector store like chroma? Thanks you
it show error when I click upsert button , although I exactly what you do , I upload a pdf file from my harddrive connect to my pc. Please help me solve the problem
What's the error?
@@leonvanzyl it show pinecone authorization error. Your api key are rejected and check your cofiguration. I put working upadate api key for openai and pinecone what is wrong with it
@@leonvanzyl I am building retriveal chatbot using openai api key and pinecone api key as in your video
Fantastic tutorials! I do have a question though. I created a chat flow using - Recursive Character text splitter, In-memory vector store and Conversational Retrieval QA Chain. I did the upsert and then tried a simple query. I always get the same response- “Hmm, I'm not sure.” What am I missing? Thanks for your help!
What is the best practice for deleting a document and updating the databases so that the flowise bot is accurate with the info it gives to the user?
Maybe a dumb question, but what I do not understand is how you keep data up-to-date. Lets say I use Flowise to take a Airtable database put it in Pinecone to make it "smart", so I can chat with it.
How do I keep the database up to date, how can I manage, that when something is updated in the airtable, it is being changed in the vectored database? If I press upsert data just gets Re-added, so not replaced but adds the data AGAIN.
How does this work?
Hi can you help with learning of automating the setup of a chatbot using flowwise for a self service SaaS product??
It is the most important subject that interests me. Thanks.if in one of your videos, you show us the use in flowise the use of an llm other than open ai. that would be great
We will have a look at using other models as well. In practice, OpenAI is without a doubt the most commonly used model in industry, therefore I'll be using it primarily.
Other topics, like function calling, require OpenAI as well 👍
What would you recommend as simple way to use AI confidentially with PHI? A movie on this would be excellent!
Stupid question, but what is PHI?
how do you get it to work with existing data in a vector db? I tried recreating the same node graph, and when asking the chatbot, it tells me it doesn´t know the answer(the default response if there is no context), yet from what i can see from the return source documents option, it does retrieve the right chunks, it just doesn´t seem to be able to read them? if i ask it to just print {context} as a response, it will give me the chunks, but it won´t be able to answer despite them being there
Thank you for your tutorial! I built an internal chatbot that uses Confluence documentation as a data source. One question that I have, though. Since technical documentation is never comprehensive enough to answer all the questions, I would like to add a feedback loop to my chatbot. In other words, I want the user to ask a question, get an answer, and then be able to give a "correct answer" that should be "learned" by the model itself (not just to be kept in session context - another user asking a similar question should receive the updated, corrected answer already). Is it possible to do this with Flowise? Do you have any valuable references or another video on this topic?
Hi Leon, great video as always. So do I create different upserts for each type of document loader using the same pinecone index and then create the retrieving chatbot using the same pinecone index for the retrieval flow?
Correct. You will not lose the data in the database when you upsert with a different uploader.
In your last flowise video you used upstash for memory where it creates as if it were a thread. To my question is when what is stored becomes greater than the context limit of the model used how to act?
Hi there, I'm not sure I understand the question.
Conversation memory and knowledge bases are unrelated.
Apologies, maybe you could rephrase the question? I honestly want to assist.
@@leonvanzyl We have the conversation memory and the vector database data right? Isn't the conversation memory similar to the openai assistant threads? My question is whether in a conversation in which I am saving the data in Upstash and the amount exceeds the model's context limit, the model would not cause truncation to retrieve information?
Hello, I'm having 2 issues I don't know how to fix it or what to change: 1: I ask a specific question and it answers way too many things instead of just the specific question and 2: it starts asking and answering questions by itself not even related to what I specifically asked .
great presentation right there leon. is it possible to keep updating the data source every day without interupting the chatbot or do i need to stop the operation if i ever want to add new datas?
Hi Leon, thank you so much for your videos; they are excellent. Thanks for sharing your knowledge. Do you know if it’s possible to build a solution in Flowise that can process images?
Hi there, thanks for the great video. I have one question regarding web scraping: what is the refresh rate of the urls? In other platforms it is possible to refresh the urls daily and I was wondering if it possible to do the same using Flowise. If yes, I have a follow-up question: how does this interact Pinecone? Will it consume tokens every time it refreshes the urls? Thanks!
Unfortunately there is no way to automatically refresh the data / trigger the upserts within FW.
I use services like n8n or Make.com to call the FW Upsert API at certain intervals.
I think this would be a good topic for a video... I'll post a video soon 👍
Hi Leon, great tutorial!! Just to cover a slightly different scenario, how do you manage not to duplicate records when running multiple times the load process on vector databases like for example Chromadb? Thank you!!
You can use Record Manager to prevent duplicates.
ruclips.net/video/sNk6-ISi7i4/видео.html
Is it possible to do it using API Loader instead of PdfFile? In this case the API Loader will return an json
I Leon, quick question, using the pinecone vector store there is a dropdown at the bottom, default is pinecone retriever and the other option is pinecone vector store. Am I correct in assuming that I use the vector store option to upsert and the retriever option afterwards to retrieve data?
Great tutorial! 👍
Amazing content!! I wanted to ask if it's possible to make a chatbot which is writing the information of the customer in google sheets documents? Is it possible to make it happen using FloWise?
Thank You, Leon
You're welcome 🤗
Great video as always. I get a memory issue, which I am assuming is due to the fact that I am on the lowest render server plan. Seems to happen when I try to upset more than a couple url links that have been scraped.
Love your work. I am struggling a bit with understanding the new "Additional Parameters" section of the node you demoed - Conversational Retrieval QA Chain. What are these variables they are forcing me to set about? We didn't need to define variables before. Thanks!
I'm guessing you're referring to the chat history and context variables.
Try not to remove those when changing the system message 😁.
Chat history is used to keep track of the conversation history.
Context, as explained in this video, is a placeholder for the context.
@@leonvanzyl you guessed right. Thank you. So just to be clear - the default text work well as is - right? I am picky about my system messages. I still feel like I need to understand this new feature better😀
sorry I keep getting this errors and I look and online and there's nothing about them, now I'm getting "Error: overloaded" when trying to chat or trying to upsert
Hello @leonvanzyl. Do you know how to integrate rerank retriever like the cohore ? thank you a lot
I haven't tried yet actually. Sounds interesting! You think it's worth a tutorial?
Hi Leon. I have adapted the chatFlow to scrape another site using the Scrape XML Sitemap method. In the URL I have entered the sitemap url and used fetch links button. This brings back a list of urls. I then press save. I then save the chatFlow. When I use upsert I get the error 'No Relative Links Found'. What piece of the jig saw am I missing please ?
Did you select "scrape XML" from the dropdown? Think that's what it's called
Hi Leon, Quick question, I see you have chosen the in-memory Vector store from vector stores new. My Vector Stores New is actually empty and only the deprecated vector stores are available. I did update Flowise from your first video in this series. Is there a very recent update perhaps?
That's really strange. Try upgrading perhaps.
@@leonvanzyl Thanks Leon, that did the trick, I also still had it installed globally as well so tossed that too.
Is there a way to add the urls to the document loader manually? I need only 30 urls from a website with over 200 urls
At this stage it seems we can only crawl one URL at a time.
Hi Leon. I am getting "Error: vectorsService.upsertVector - Error: Error: An error occurred while fetching the blob" using any vector store, pinecone, chromadb and in memory vector store
I am really grateful for the knowledge you give. It is really wonderful. Thank you. I noticed that this tutorial doesn't work on render but it works on my desktop. Is there a way that I can configure it to work on Render Cloud?? I appreciate your help. Thanks
Thank you for the kind words.
It should work on Render. What issue are you having?
Great example, thank you Leon! I find the example with crawling via Cherio and the sitemap super exciting. Do you think you can also cover a large website with >10,000 URLs with this? And do you see an option to include several websites at once? Thank you!
Thank you!
For large websites I recommend creating a CSV extract from the database and to upload that CSV instead.
Scraping large websites are a terrible idea 😁
how u got the link for side map ?
incredibly valuable!!!!
Glad you enjoyed it!
@@leonvanzyl thanks 👍🏻
Excellent video! How come I can't hookup a "Vector Store Retriever" to the "Conversational Retrieval QA Chain", but I can hook it up to "Multi Retrieval QA Chain"? Both say they accept "Vector Store Retriever". I don't see any way to use a prompt template with "Multi Retrieval QA Chain", so that is why I wanted to try using the conversational retrieval chain.
Thank you for the feedback 👍.
These tutorials are great, but is anyone else finding the bot just struggles with the PDF? It's really poor for me. I've also found "how can i deploy flowise to render?" doesn't work but "How can I deploy Flowise to Render?" does, so it seems you have to be very precise for this to work which isn't realistic..? Unless I'm missing something?
"version": "1.8.0",
Hey Leon, as usual thanks for an awesome and informative video. Would this solution also work with a local MySQL server?
i did everything exactly as you did, when i try to ask my pdf a question from content further in the document it just throws hmm i dont know. infos from the beginning work fine. seems like it just ignores the embedded info and just gets the first few thousand tokens. a bit frustrating but i tried other chunk size and embedding models, nothing works :(
Sorry to hear that you're having issues.
RAG is a reliable method for fetching documents and you really shouldn't be having issues.
It's hard to pinpoint what the issue could be based on the information you provided.
I suggest that you try to use Pinecone instead of buffer memory. You can also check that the Pinecone database contains the information that you're querying.
Also ensure that the information in the document is text and not images. The PDF Loader is not able / effective at extracting text from images.
You might be experiencing issues with buffer memory due to hardware limitations.
Let us know if you come right 👍.
@@leonvanzyl thank you very much for your answer! Initially i had the same problem also with pinecone. I then, through trial and error, found that for smaller .txt files, like the one you had in the older tutorial video, a chunk size of about 200 with overlap 50 worked well, but not for the larger pdf files. There i only started to not get the hmm, i dont know message when i increased the chunk size to 3000 with overlap 300. the pdfs were medical guidelines that did not have a lot of images, and it was ocr scanned. My hardware is on the high end side, but my ssd is running thin on free space, maybe thats got something to do with it.
I assume there is a lot i dont yet understand about RAG as well as llms and flowise 😅.
I saw another youtube video that mentioned semantic text splitters. That seemed to make a lot more sense to me than the other text splitters, do you know if that is possible to do in flowise?
Also do you have content on how metadata works for RAG?
Thanks again :)
Thank You, Leon, Can you make a video on how to set up such bots for online shops where there are a lot of different products, I can not get the bot set up correctly. Because of the large number of products, it gets confused in the articles (and for the shop is important accuracy) confused in the cost and so on. Perhaps it is necessary to prepare data in a special way. I will be glad to any help.
Surely the sitemap option would work for you?
@@leonvanzyl I don't know but thanks for the advice, I'll try using the sitemap, can I email you Leon in case of difficulties?
Hi Leon. I currently have the situation that I need two knowledge-bases. First I have some static data (Knowledge in for Folder Loader) and embedded to Pinecone. But I now also have some dynamic data (events) that needs to be crawled on a daily basis from a website and be updated. (so outdated infos get removed, new crawled infos can be retrieved). Do you have a solution for that? Thank you - Roman
Flowise does not have a solution for periodically updating the Vector Store (like your example of scraping the website on daily basis).
However, they do offer an API that you can call from outside of Flowise to trigger the Upsert.
So what you could do is to set up a Cron job that runs the Upsert API daily.
This might be a good tip to include in the next Flowise Tips and Tricks video.
You can set up cron jobs for free using cron-job.org.
For some reason my LCEL page vector count was 5 when you had 370 in pinecone. I have my chunk size and overlap set the same. Still worked but confusing.
Haha, don't worry about it. I actually upserted a few things during recording, which were edited out 😁
I implemented this and built a RAG application that works like a charm thanks!! But now I have the problem that I want to add a custom tool to it but it seems I have to decide whether to build my flow EITHER using the Conversational Retrieval QA chain OR a node such as OpenAI Tool Agent that will allow me to use my tool. Sorry for asking you a technical question like this here but I didn't find an answer anywhere else. Is there a way to keep the Conversational Retrieval QA Chain and enable the flow to use custom tools at the same time? Or would I really have to switch to a Retriever Tool/Custom Tool for an Agent Node...? What is the best way to build a flow that will retrieve well in Pinecone AND make intelligent use of tools? Thanks!
Only agent nodes can call tools. The OpenAI Tools Agent would be perfect for you.
Check out my agents video to see how you can add RAG to the agent along with tools
@@leonvanzyl Will do, thanks!
@@leonvanzyl I'm a pro member of your channel now :) I found that the retrieval results of an OpenAI Tool Agent with a Retriever Tool are inferior to the response quality of the Conversational Retrievel QA Chain. My RAG flow is based on the web-scrape-qna template by Flowise so I use HTML Splitter, Cheerio, Pinecone and Conversational Retrieval QA Chain. I use a seperate flow to upsert to Pinecone and I don't use Redis at the moment. The problem is now that when I return source documents to the chat, they show up in the chat window with their relative URLs instead of the page title as is nicely seen in the screenshot in Flowise's web-scrape-qna example. When I upsert the way they show it I don't even have a metadata key in Pinecone that contains the page title... I even added a title metadata key in Pinecone with a python script but now I don't know how I get Flowise to use these titles when displaying source documents. Do you have any idea why that is? Many thanks!!
I found that the retrieval results of an OpenAI Tool Agent with a Retriever Tool are inferior to the response quality of the Conversational Retrievel QA Chain. My RAG flow is based on the web-scrape-qna template by Flowise so I use HTML Splitter, Cheerio, Pinecone and Conversational Retrieval QA Chain. The problem is now that when I return source documents to the chat, they show up in the chat window with their relative URLs instead of the page title as is nicely seen in the screenshot in Flowise's web-scrape-qna example. I don't know how I get Flowise to use these titles when displaying source documents. Do you have any idea why that is? Many thanks!!
That's a good point. I noticed that as well.
The Tools Agent node is relatively new so it's possible that it's a bug. I'll pass your message on to the Flowise team as well.
@@leonvanzyl I hope you pass the message on not only about the retrieval quality but especially about the source title problem! And please note that I have that problem with the source titles with the Conversational Retrieval QA Chain, not the OpenAI Tool Agent/Retriever Tool. Many thanks!❤
Thank you for the professional and informative video. Could you please let me know if there is an option after updating Pinecone to add new information without re-starting the whole process?
You can add new information whenever you want. No need to restart the process.
Thank you for your quick response. If I understand correctly, the new information is simply uploaded to the same index in pinecone. But is there a way to detect or track a change in the website so that only the new pages that have disappeared will be scanned and uploaded to the index in pinecone.@@leonvanzyl
Is Microsoft AutoGen and Langchain AutoGPT the same? Can you do a quick demo in Flowise? Thank you.
AutoGPT has changed a lot over the past year so I'm not exactly sure what it's capabilities are. The version of AGPT that I remember was very different to AutoGen.
AutoGPT is an agent tool, where AutoGen is a developer framework for building collaborative agent solutions.
Unfortunately, it no longer works with the FlowiseAi update 1.8.0.
A check via Longsmith is also no longer possible.
Can you provide more information on the issues please? I literally use Flowise every day and can confirm that this still works.
LangSmith simply moved to settings.
I think i'm having similar issues too on 1.8.0
Top notch videos sir
Glad you enjoyed it
So I was following the tutorial up to a point where I had to press the green button for upsert vector store and I don't have the green button :) What's up with that?
Upgrade your version of Flowise. Remember to save the chatflow.
Hi Leon,
A new subscriber here.
I'm creating a retrieval chain with Hugging Face as a chat model, using Pinecone and a PDF loader, but I always receive the same error:
Error: vectorsService.upsertVector - Error: An error occurred while fetching the blob.
Do you know how I can fix it?
Thanks!
Your tutorials are absolutely awesome. A question, can one build a kind of an Autogen i.e. a multi-agent framework using flow-wise? I personally would love to see that kind of an implementation?
Thank you!
I think Flowise might be the wrong tool for that situation.
Collaborative agents is not really something Flowise can do at this stage.
Is it better than autogen studio?
Loving this channel!
My goal is to scrape my municipal website and offer a chatbot to any of the local organizations in my community. Do I have to use node to use cherrio to scrape an entire municipal webpage?
You could definitely use Cheerio for that.
which embedding should I use if i want to use Claude as my Chat Model? :) Can anybody help me?
Voyage AI seems to be the best option for Claude.
docs.anthropic.com/claude/docs/embeddings
Thanks for this great tutorial. With Pinecone, however, I have not yet understood how I can delete parts of the vector store. Is there a possibility with Flowise like upsert Reverse?
Each record contains metadata. Flowise doesn't allow for deleting data, but your application can delete all entries based on the metadata.
Hi Leon, quick question, When I moved to pinecone, the quality of responses deteriorated quite a lot compared to the local memory. I have tried playing with the splitting but no change. I am using a pdf doc. Would a text or word doc perhaps be better?
Performance actually gets better over time as the service scales. I forgot to mention that in the video :-D .
Your videos are rewarding,I've learned a lot.Can I ask if I can use nodes so that chatbots can both use my document and custom tool to retrieve user information via webhooks and save it to google sheet?I tried using the Open Assistant but the data was too misleading compared to the data in my document.Please help me, Thanks a lot!
Thank you for the feedback.
I need a better understanding of your requirement, but it seems like something that should be achievable with Agents.
We haven't covered agents in this series yet, but maybe once we go over tools and retrieval agents, it would help you
Thanks for sharing! How to extend the chatbot so endusers can upload PDF files for upserting…? Is it possible?
Absolutely. You could call the API endpoint from your application
@@leonvanzylgreat, good to know. thank you!
thanks for your tutorial! Will there be another one for RAG but using LlamaIndex?
I'll create a seperate crash course on Flowise Llama Index once it's out of beta 👍