- 8
- 239 508
LLMs for Devs
Canada
Приєднався 14 чер 2023
Developers learning AI & LLM.
Don't naive RAG do hybrid search instead (Pinecone Weaviate or pgvector + full text search & rerank)
We'll compare hybrid search using Pinecone, Weaviate and then Postgres (Supabase) full text search + pgvector and then rerank using Jina AI's Reranker.
👨💻 Code: github.com/trancethehuman/ai-workshop-code/blob/main/Hybrid_Search_Workshop.ipynb
Tools mentioned:
@pinecone-io: www.pinecone.io/
@Weaviate: weaviate.io/
@Supabase: supabase.com/
@JinaAI Reranker: jina.ai/reranker/
Vecs (Python): github.com/supabase/vecs
🚌 Sign up for my upcoming AI engineering course: tally.so/r/n9daQ1
Follow me on Twitter: haithehuman
Find me on LinkedIn: www.linkedin.com/in/haiphunghiem/
(Consulting) If you want me to work with you: tally.so/r/n9djRQ
👨💻 Code: github.com/trancethehuman/ai-workshop-code/blob/main/Hybrid_Search_Workshop.ipynb
Tools mentioned:
@pinecone-io: www.pinecone.io/
@Weaviate: weaviate.io/
@Supabase: supabase.com/
@JinaAI Reranker: jina.ai/reranker/
Vecs (Python): github.com/supabase/vecs
🚌 Sign up for my upcoming AI engineering course: tally.so/r/n9daQ1
Follow me on Twitter: haithehuman
Find me on LinkedIn: www.linkedin.com/in/haiphunghiem/
(Consulting) If you want me to work with you: tally.so/r/n9djRQ
Переглядів: 6 611
Відео
How to scrape the web for LLM in 2024: Jina AI (Reader API), Mendable (firecrawl) and Scrapegraph-ai
Переглядів 175 тис.4 місяці тому
👨💻 Code: github.com/trancethehuman/ai-workshop-code/blob/main/Web_scraping_for_LLM_in_2024.ipynb (if there are issues with viewing the code, just fork and clone the repository. It's just a current problem with GitHub's way of displaying Jupyter notebooks - nbconvert) Tools mentioned: Jina AI: jina.ai/reader Mendable's Firecrawl: www.firecrawl.dev/ Scrapegraph-ai: github.com/VinciGit00/Scrapegr...
5 tiers of long-term memory and personalization for LLM applications (in-person workshop)
Переглядів 4,8 тис.4 місяці тому
👨💻 Code: github.com/trancethehuman/ai-workshop-code/blob/main/Long_term_memory_&_personalized_LLM_responses.ipynb 🚌 Sign up for my upcoming AI engineering course: tally.so/r/n9daQ1 Follow me on Twitter: haithehuman Find me on LinkedIn: www.linkedin.com/in/haiphunghiem/ (Consulting) If you want me to work with you: tally.so/r/n9djRQ
Scrape any website with OpenAI Functions & LangChain
Переглядів 47 тис.Рік тому
👨💻 GitHub code: github.com/trancethehuman/entities-extraction-web-scraper Sign up for my paid courses: tally.so/r/n9daQ1 👋 Follow me on X / Twitter: haithehuman #ai #langchain #openai #webscraping #llm
AI Companion Clone (Replika) with LangChain and OpenAI Functions as entity extractor
Переглядів 1,7 тис.Рік тому
Build an AI companion using this codebase. Sign up for my paid courses: tally.so/r/n9daQ1
Pi (inflection.ai) has become Samantha from Her (2014)
Переглядів 1,1 тис.Рік тому
Pi (inflection.ai) has become Samantha from Her (2014)
Can't pick a vector database? Use this pattern and try them all.
Переглядів 1,3 тис.Рік тому
GitHub: github.com/trancethehuman/factory-pattern-vectorstore-interface Connect with me: www.linkedin.com/in/haiphunghiem/ #vectorstore #langchain #openai #gpt #gpt-3.5
Use OpenAI Function instead of LangChain ReAct Agent Tool in 10 minutes
Переглядів 2,7 тис.Рік тому
New OpenAI function update new LangChain agent tools update implemented on an existing codebase of ReAct agent. Sign up for my paid courses: tally.so/r/n9daQ1 #spotify #langchain #openai #gpt #gpt-3.5
Can Jina handle sites with lazy load? Looking at dealership websites
Thanks for sharing, bro! Greetings from Colombia
My pleasure!
pure gold, thanks man!
I like this format of video...background has a large monitor...Nice video
I wonder how this would handle dynamic content: as in scraping websites where you have to click stuff to reveal valuable content.
It was quite useful for me.
No, I know why you want long-term memory-because your AI girlfriend doesn't remember your past conversations. She forgets you, that's why.
T.T
Hi. I have a video request. Is there a way to contact you?
tally.so/r/n9djRQ
@@devlearnllm done. Thanks
Great stuff man, thanks a lot!
Cheers!
For experimenting I would recommend using no database at all. You can simply use the cosine similarity (i.e. from torch functional) or quickly implement it and you are nearly done. Just use some argsort to get the best matches. It's like five lines of code or so. For easy store/load you can use pickle to serialize/unserialize the object that holds the embeddings. It is fast on CPU too, but of course you can run it on GPU without any bigger changes. No services required.
good point
I wonder if you would update it to be able to use gpt-4o-mini as its much cheaper
yep
Im curious how you handle pages where the content exceeds token window
I'm sure Firecrawl or Jina would have a rolling context window for extraction. It's an easy thing to implement.
what happens if we use all the 25000 cases, will it work?
Most likely. Pinecone, Weaviate and pgvector are very performant.
you havent updated us on how much does scrapegraph-ai takes in comparison
Ah shoot I forgot about that.
Would be cool to make AI website scraper that strips away all javascript bloat from a webpage and converts it into lightweight basic html page while preserving functionality. Would be great as a proxy service to make loading modern web pages fast on slow phones on poor data connections. Modern web is way too bloated. I sometimes manually archive a page by deleting all javascript in notepad++ and modify image embed links to point to locally saved .png files. That takes a long time but I can reduce 5MB page down to 200kB and save that. Would be nice to have smart automated tool to do that in seconds.
Great intro and work flow. Thanks a lot.
Much appreciated!
Thank you so much for the presentation. Just in time with the latest scraping technology
You bet!
Why not use Chatgpt and ask it to find information. Cant GPT just search the web itself?
I think there should be a microphone in the middle of the audience. You had an insightful discussion with them, amazing audience!
Great idea!
The motion-tracking is a bit distracting.
I dont know if my question is stupid, but can you tell me can we take snapshots of website and use ocr and llms to scrape the useful info, instead of sending request to that website since it would look more humanly , and also use less requests
Yeah you can probably do that!
@@devlearnllm thanks 🤝
Hi, I'm trying to scrape webdata from my Org Docs which is accessible only within VPN. Failed to goto 'docs url'. Can you help me with this ?
You should've tried Qdrant.
is it possible to run it with Ollama?
Most likely
great
Nice workshop! I'll definitely try out the hybrid search. Do you recon it'll work with nomic text embeddings and ollama?
Most likely!
Is Openai embedding v3 model better than Bert?
Hard to tell unless experiments are run. huggingface.co/spaces/mteb/leaderboard
Nice video sir. I have already been experimenting with the colab - sincerest thanks
Great to hear!
Hey yall, in case you didn't get good full text search results like me, the CEO of Supabase (Paul Copplestone) sent me this to use instead: supabase.com/docs/guides/database/extensions/pgroonga
@LLMs for Devs. I'm from Jina AI. Cool that you are using our reader app. I like seeing the exact use-cases people use that one - very interesting.
Big fan of Jina.
@@devlearnllm hi times are tough. can I borrow 10000k? I need rent money and lost my job as a retail worker at Dicks sporting goods in dallas.
Very informative! A great resource. Thanks for sharing your wealth of knowledge!!
I just use Google 🙃
very good workshop. straight to the point
This video was really helpful for the people like me looking for webscrapping tools. Though I wonder if jinaAi is really free. Is there any challenge in using it for more number of links? Does it have rate limit on hitting urls with prefix? Any clarification on this is appreciated. : )
No hard limits as far as I know. Free for now (I think this is intentional), but definitely will change in the future.
Great video!! Thanks for sharing the code! One question though: Inside A:tier code -> "print_ai_answer" function, you wrote: for like in extracted_personality["likes"]: text_to_embed = f"The user likes {like}" current_embeddings = embedding_client.embed_query(text_to_embed) dislike_with_metadata = { "id": str(uuid.uuid4()), "values": current_embeddings, "metadata": {"type": "likes", "content": like} } embeddings.append(dislike_with_metadata) Was it not supposed to be something like "likes_with_metadata ={...}" and then "embeddings.append(likes_with_metadata)" ? I guess repeating "dislike_with_metadata" does not make a difference for the code functionality, but it was a bit confusing to understand the code for a moment. Thanks!
Good catch!
so what did you find out about scrapegraph ai performance , tokens
Great demo, thank you!
My pleasure!
I don’t know how effective will this be in a long run especially due to the security update of cloudflare to block AI web scraping agents
So valueable video content! Many thanks for sharing~~
thansk, but difference or what is better gina reader or Scrapegraph-ai
Great video, thanks. Is there a way to provide our own scraped data (so we can make sure we use a good stealth scraper and get all the content), and then the LLM analyses it like this?
Yeah, you can always just build an LLM chain to just extract data. You can find the example in the Google Colab I provided.
I guess selenium is still the choice for javascript heavy websites... any tips on this?
bro i watched 4 minutes add before jumping actual video
That's crazy. Let me see if I can change that somehow
Thank you!!!!!!
Jina is almost perfect.. too bad it's not smart enough to scrape content from "accordions" where you first click to make the content visible. I feel a smart AI scraper should be able to grab that text and determine based on CSS class that it's probably valuable text.. just hidden at the time
That's too bad. What's the alternative?
"The entire internet hates him for this one simple trick"
9/10 prompt engineers recommend this
The camera moves too much
its the worst
@@devlearnllm Aside from that, great video.
How is your final implementation? I’m really curious about it, because make sense to have this abstracted, but we have some differences between than that can make this process tricky
Honestly handy because I went from Pinecone -> pgvector, and with all the abstracted methods declared, I was confidence in flipping and nothing broke.
@@devlearnllm Oh amazing, great news ! I will try to start with this implementation pattern, thank you !
such an inefficient and unreliable way to scrape the web
Please do not move the camera all the time
Definitely loosen up the tracking to center. OSBTail?
It's actually built-into the DJI Pocket 3 camera. I just had it for a few weeks. Just need to find the settings for it.
@@devlearnllm change the follow speed to slow instead of fast.