OpenAI Embeddings and Vector Databases Crash Course

Поділитися
Вставка
  • Опубліковано 5 тра 2024
  • Embeddings and Vectors are a great way of storing and retrieving information for use with AI services. OpenAI provides a great embedding API to do this. Postman lets you make these with easy at www.postman.com/ (today's sponsor)
    In this video we will explore how to create a Vector Database by creating embeddings using the OpenAI API and then storing them in SingleStore.
    The first part of the video will cover how to create an embedding using just API requests with Postman. Then we will jump into Single Store and store these in a new database made specifically for vectors like this.
    00:00 - Introduction
    00:10 - What are Embeddings and Vectors
    02:14 - Setup OpenAI Embeddings
    03:11 - Setup Postman API Requests to create Embeddings
    03:55 - Create Embedding
    03:55 - Create Embedding
    06:55 - Create PDF or Document Embedding
    07:43 - Vector Database - Setup with SingleStore
    08:20 - Vector Database - Create Database
    09:32 - Vector Database - Create Table
    10:41 - Vector Database - Insert Embedding Row
    13:25 - Vector Database - Search Embeddings
    15:18 - Embedding function with JavaScript and NodeJS
    18:08 - OpenAI and GPT Digital Book
    18:29 - Conclusion
    Postman: (today's Sponsor) for API Requests
    www.postman.com/
    OpenAI Embedding Documentation:
    platform.openai.com/docs/api-...
    SingleStore Vector Database
    www.singlestore.com/cloud-tri...
    ⭐ Teach Me OpenAI & GPT - Digital Book ⭐
    enhanceui.gumroad.com/l/teach...
    Learn Design for Developers!
    A book I've created to help you improve the look of your apps and websites.
    📘 Enhance UI: www.enhanceui.com/
    Feel free to follow me on:
    🐦 Twitter: intent/follow?scr...
    💬 Discord: / discord
    💸 Patreon: / adriantwarog
    Software & Discounts:
    🚾 Webflow: webflow.grsm.io/adrian
    🌿 Envato: 1.envato.market/yRZjz2
    🌿 Envato Elements: 1.envato.market/LP0OJZ
    🔴 Elementor: elementor.com/adrian/?ref=23140
    ✖ Editor X: www.editorx.com/adrian-twarog
    Computer Gear:
    ⬛ Monitor: amzn.to/3f9DOQI
    ⌨ Keyboard: amzn.to/3eA5UFD
    🐁 Mouse: amzn.to/3xVJO8l
    🎤 Mic: amzn.to/3hgCfms
    📱 Tablet: amzn.to/3ewt7sa
    💡 Lighting: amzn.to/3vOZeZY
    💡 Key Lighting: amzn.to/3f6qP2f
    Camera Equipment:
    📷 Camera: amzn.to/3uCv4J9
    📸 Primary Lens: amzn.to/3vT6wMm
    📸 Secondary Lens: amzn.to/3tyqWIX
    🎥 Secondary Camera: amzn.to/3o2zCGi
    🎙 Camera Mic: amzn.to/33tCz9l
    🎞 USB to HDMI: amzn.to/33yW9RE
  • Наука та технологія

КОМЕНТАРІ • 159

  • @user-zy5nu7xp1d
    @user-zy5nu7xp1d 9 місяців тому +11

    I have seen multiple tutorials, this is by far the best and most concise, great work man

  • @nickfleming3719
    @nickfleming3719 9 місяців тому +76

    That isn't a vector database. It's a relational database with vectors stored on a text column. In practice, you will have thousands of embeddings and performance will tank with this setup

    • @trevorbaier7072
      @trevorbaier7072 6 місяців тому +2

      What's a more ideal solution for storing vectors?

    • @brookster7772
      @brookster7772 6 місяців тому +5

      From my investigation, Redis is an excellent vector store to be used in both development and production especially when it’s a local Dockerized instance

    • @SussyBacca
      @SussyBacca 5 місяців тому +4

      Mongodb atlas is awesome for vectors. They have a new vector feature called knnbeta

    • @ParthSaneHD
      @ParthSaneHD 5 місяців тому +2

      Pinecone works too!

    • @amdenis
      @amdenis 4 місяці тому

      You are correct, but you know that! It’s indexing is not fast enough for many serious AI projects, and its single threaded architecture does not scale. Under the hood there are many other non-vector legacy issues.

  • @nickkondoori7550
    @nickkondoori7550 8 місяців тому +16

    Incredible teaching skills. First time ever, I loved someone who can teach "ME" the way I always wanted. Thousand thumbs up Adrian!!

  • @LeonardoCarreraBaude
    @LeonardoCarreraBaude 8 місяців тому +2

    I just bought 2 Udemy courses, and after 5 hours, none of them talk so well about this. I appreciate it, and I will buy your book. Thanks for your content.

  • @LindsayHiebert
    @LindsayHiebert 10 місяців тому +13

    Excellent overview! Very concise, clear and relevant! Great job! Thank you Adrian! 😊

  • @phil97n
    @phil97n 8 місяців тому +2

    Awesome thanks.
    Been studying calculus and linear algebra before I dive deep into AI. I will definitely be dealing with vector databases very soon and looking forward to it.

  • @daygo619ca
    @daygo619ca 8 місяців тому

    This tutorial was incredible - completely glued to it

  • @saik6730
    @saik6730 7 місяців тому

    Best AI video ever . Made it easy to understand with 2 simple concepts . Thanks man!

  • @JeremyArtero
    @JeremyArtero 7 місяців тому

    This course is gold! Thanks! I have done similar steps on Astra db and it was smooth

  • @coinexponent1884
    @coinexponent1884 8 місяців тому +5

    Learn vector embeddings using first principles. Always engaging, and very rewarding for the learner. Thank you!

  • @krisograbek
    @krisograbek 10 місяців тому +8

    Adrian, your channel is a gem! I love the way you explain complex topics and the pace of your videos! Greetings from Poland!

  • @RajShekarsdreamzzz
    @RajShekarsdreamzzz 8 місяців тому

    Very Good session Adrain... your way of teaching is keeping the people glued... Keep it up

  • @photorealm
    @photorealm Місяць тому

    That was the first video that actually gave me a understanding of how vector DB's kind of work. Thank you for sharing.

  • @TheOGDesigner
    @TheOGDesigner 9 місяців тому +3

    Amazing tutorial! The way you explain is so easy and understandable!

  • @rkjellbe
    @rkjellbe 8 місяців тому

    Finally, found a video with the appropriate detail. For me! 😊 Thank you!

  • @karsonkalt7607
    @karsonkalt7607 7 місяців тому

    Fantastic tutorial and explanation!!

  • @SuperITPRO
    @SuperITPRO 8 місяців тому +33

    My ADHD normally overrides my concentration. Your tutorial pace, live coding, and narrative made me complete my 1st Open AI coded app - thank you!

    • @zzej
      @zzej 8 місяців тому +1

      Same

    • @nicholastroyandersen9505
      @nicholastroyandersen9505 8 місяців тому +4

      Don't use ADHD as an excuse, it ain't no sickness, just personality. Take it and make it your best quality.

    • @nickscherrer1735
      @nickscherrer1735 7 місяців тому

      @@nicholastroyandersen9505it’s…. Not a personality, lmfao. It’s a very clear set of learning disabilities centered around working memory, executive function, and tuning out

    • @davidabellangarrido2056
      @davidabellangarrido2056 7 місяців тому

      same and without knowing english

    • @pauls064
      @pauls064 3 місяці тому

      @@nicholastroyandersen9505it’s literally a neurological condition that can be seen on scans and measured… ignorant comment

  • @rasmuspiirtola4397
    @rasmuspiirtola4397 6 місяців тому +1

    Rarely comment, but damn, you did a perfect job - I am at 8:01, haven't watched the video but had to pause and comment - until 8:01, everything was perfect; how you explain concepts and utilize tools ensures that we understand the concept in practice with ease! Great job, continue making videos; you should do consulting if you don't already do so. It's easy money with little hours with your skills and knowledge!

  • @adamduvick
    @adamduvick 8 місяців тому +5

    Let me see if I understand what’s going on here:
    1) you have data you want to search semantically
    2) you create a vector database capable of storing & querying data semantic search queries
    3) you use OpenAI to process your data & convert it to vectors which can stored in your database
    4) you store the data along with the OpenAI generated vectors
    5) now you can search the data
    Is that all it is? I thought you were then going leverage this database to give chatgpt “long term memory” ( 0:20 ). What you’ve showed seems nice, but I don’t really see the point since most people/companies who have enough data that would need to be queried in this way would not be able to give it away to OpenAI to process.

  • @aiadvantage
    @aiadvantage 10 місяців тому +15

    Super high quality video right here. Good job Adrian

    • @AdrianTwarog
      @AdrianTwarog  10 місяців тому +3

      Hey I've seen your stuff too, it's great, thanks for the nice words!

  • @demetriusmds
    @demetriusmds 8 місяців тому

    Excellent. Thank you. Helped a lot.

  • @sunnysk43
    @sunnysk43 5 місяців тому

    Absolutely amazing! Thank you so much for your work!

  • @kfliden
    @kfliden 12 днів тому

    Wow, thanks I'm finally starting to get embeddings!

  • @karthikg752
    @karthikg752 8 місяців тому

    The voice recording and explanation is really clear - surprising how tone and voice plays a major role in understanding. Was watching another video which was equally good but somehow the slang and recording made it a bit difficult to understand. Thanks

  • @brookster7772
    @brookster7772 6 місяців тому

    Bare metal, removing all higher level obstructions going right down to the core. I love it the best understanding of what embedding’s earlier that I have seen great job.

  • @AmanBansil
    @AmanBansil 2 місяці тому

    Absolutely LOVE this. you're so clear and concise.

  • @satanrasool1802
    @satanrasool1802 9 місяців тому

    Love it.. it was far simpler than I thought..

  • @robertcormia7970
    @robertcormia7970 4 місяці тому

    Well done, succinct, and excellent explainations of complex topics.

  • @Kevin509wisdom
    @Kevin509wisdom 8 місяців тому

    fantastic job!

  • @abijithpradeep7478
    @abijithpradeep7478 8 місяців тому +2

    For those who already had an OpenAi account and you are facing an error while posting the HTTP request, its because your free credit has expired. You will have to add a payment method or createa new account to get free credits agin and then everything will work fine according to this tutorial.

  • @dipayanroy964
    @dipayanroy964 25 днів тому

    I wish everyone could have presented like you, simply Super. Looking forward for more in similar way

  • @ZaidKhanPathan
    @ZaidKhanPathan 7 місяців тому

    Wow! Easy, clear and to the point.

  • @anrk97
    @anrk97 10 місяців тому +3

    Love your thumbnails. Keeps getting better with each video 👍

    • @AdrianTwarog
      @AdrianTwarog  10 місяців тому +2

      Thanks, I try to make them as clear to what they video represents as possible!

  • @CodexCommunity
    @CodexCommunity 10 місяців тому

    This is the best video on openai embeddings I have ever seen, I am also a bit biased!

  • @codinginflow
    @codinginflow 6 місяців тому

    This was a great overview Adrian!

  • @parkerrex
    @parkerrex 7 місяців тому

    Great video !!! :)

  • @shpop1
    @shpop1 8 місяців тому

    Great video ! precise..

  • @ravindrasingh2411
    @ravindrasingh2411 2 місяці тому

    Adrian, this is beautifully explained. Absolutely loved it :)

  • @sany2k8
    @sany2k8 9 місяців тому

    Great content 👍👍👍, waiting for more OpenAI, AI related content

  • @user-vm2er4qj9w
    @user-vm2er4qj9w 7 місяців тому

    thanks for this video video is really helpfull

  • @chrislannon
    @chrislannon 3 місяці тому

    Nice work! Thanks so much for this awesome demo.

  • @Ricocase
    @Ricocase 8 місяців тому

    Cool course. How does one connect it to a basic website?

  • @Glow0110
    @Glow0110 6 місяців тому +6

    Would be great to see a follow up video of practical applications using this.

    • @atursams5501
      @atursams5501 6 місяців тому

      The practical application are varied:
      sentiment analysis
      term search
      Classification

  • @corejava5730
    @corejava5730 8 місяців тому

    Very well explained, Thanks Adrian !! I have astaffing firm and I have a database of more than a million resumes. I m planning to create a resume search application for my recruiters. Do you think I should be using combination of Embeddings and Vector Database for above use case.

  • @FahadKiani1
    @FahadKiani1 9 місяців тому +4

    Will you create a second part of this video where PDF's are uploaded and then analyzed?

  • @nrusimha11
    @nrusimha11 9 місяців тому

    Crisp and to the point, thank you. Can I ask how you made the slides like the one at 0:52?

  • @ewhite_dipi
    @ewhite_dipi 8 місяців тому

    what are the prerequisites to understand the content in this video? And where can I learn them?

  • @adavis912
    @adavis912 3 місяці тому

    Great tutorial!!! I will be buying your book.

  • @user-uw6ld2dp9z
    @user-uw6ld2dp9z 5 місяців тому

    Perfect explaination!

  • @rafaelmartinsdecastro7641
    @rafaelmartinsdecastro7641 9 місяців тому

    This is great stuff, thanks.

  • @Art-kz6zf
    @Art-kz6zf 7 місяців тому +1

    How efficient is the vector search if you need to go through all of the records every time you search? Shouldn't there be some dedicated field type for embeddings other than blob?

  • @pablochacon7641
    @pablochacon7641 9 місяців тому

    Very interesting video, but what are the prerequisites to understand & actually implement this ?

  • @user-qg5bo9bd5x
    @user-qg5bo9bd5x 4 місяці тому

    great explanation ! thanks !!

  • @omangramoswaane2211
    @omangramoswaane2211 9 місяців тому

    Nice video. I love your work.

  • @alexsalgado
    @alexsalgado 10 місяців тому

    Excellent content, what changes for audio search?

  • @pajisounds
    @pajisounds 10 місяців тому +4

    Nice video, it would have been nice with a demonstration at the end or intro, keep up the good work.

    • @AdrianTwarog
      @AdrianTwarog  10 місяців тому

      Oh good suggestion, I’ll do that next time!!

  • @mohammadbarzegari8737
    @mohammadbarzegari8737 5 місяців тому

    Perfect learning ❤🎉 master of learning ❤❤❤❤

  • @SarthakAgarwal-sm1gp
    @SarthakAgarwal-sm1gp Місяць тому

    Awesome Content! Thanks

  • @contactbhasker7483
    @contactbhasker7483 8 місяців тому

    dot_product is a function offered by this database for vector searching, ranking etc.. ?

  • @balajidasari9114
    @balajidasari9114 2 місяці тому

    This is amazing

  • @curtisblake261
    @curtisblake261 4 місяці тому +1

    I like this video and I don't mind all the upselling. My only complaint is that if I pause the video for too long, it automatically sends me to another video in the series, which makes it hard to get back to where I was. You might assume it is user error, but it isn't. The automatic transferal and loss of context happens constantly with this UA-cam video, and I've never had the problem with any other UA-cam tutorial. I'm fine with the monetizing and upselling since it helps reward the content creator, I just wish it wouldn't keep making me lose my place in the tutorial.

  • @user-wf2ok2tq1z
    @user-wf2ok2tq1z 7 місяців тому

    I'm a little confused.. If I created embeddings and which I'm assuming is essentially training the openai model on a specific topic for my company. Would it be able to answer questions only on the specific topic it was trained for?

  • @matickovac
    @matickovac 12 днів тому

    Great work presenting this!
    Do you happen to know how similar or different this is from what Elasticsearch does when performing full-text search?

  • @joergmayer3741
    @joergmayer3741 9 місяців тому

    Great video. THX

  • @chrismalingshu
    @chrismalingshu 8 місяців тому +3

    [Question] When input hello earth, "Hello World" scored 0.89, meanwhile "OpenAI Vectors and Embeedings are Easy!" scored 0.74. Which is quite close to the top rank text. But syntactically first and second returned text are very different. Somehow I expect the second text might scored 0.5 and below.
    Could you please share your thoughts on this Adrian?
    Thank you!

    • @daffertube
      @daffertube 6 місяців тому

      You would need to ask someone who built the transformers at openai.

  • @PeterAdiSaputro
    @PeterAdiSaputro 9 місяців тому

    In the past, I learned Support Vector Machines for doing classification. At that time, I struggled to learn the concept, although I finally was able to implement it into a program using codes made by another party. The introduction of this video suddenly revived the memory and helped me better understand the concept of SVMs that I learned years ago.
    Is Postman completely free and can be used without any restrictions or limitations ? Is Single Store also completely free without any restrictions or limitations ?

  • @KaptainLuis
    @KaptainLuis 3 місяці тому

    thank you!

  • @madhavanand756
    @madhavanand756 9 місяців тому

    Excellence & Awesome

  • @MannyBernabe
    @MannyBernabe 2 місяці тому

    excellent. thx!

  • @FalahgsGate
    @FalahgsGate 9 місяців тому

    excellent❤ work

  • @atursams5501
    @atursams5501 6 місяців тому

    Great work! How do you make these nice presentations with the fancy arrows?

  • @GenZManhood
    @GenZManhood 9 місяців тому +2

    I get this message when I run the API. Do you need to pay OpenAI for it to work? Thanks! "error": {"message": "You exceeded your current quota, please check your plan and billing details.",

  • @joostschuur
    @joostschuur 10 місяців тому

    How would I go about weighing the results by other meta data? Say I have a bunch of videos, and I'm searching the title/description, but want to give some amount of preference to newer videos too.

  • @mahanteshg609
    @mahanteshg609 2 місяці тому

    Loved it

  • @Adam9174X
    @Adam9174X 10 місяців тому

    I loved your video about ChatGPT Clone! Could you please make a new video to further improve the clone? For example, you could demonstrate how to make the website width responsive to work on all devices. Additionally, it would be great if you could show how to add some new features, such as a cool typewriter effect for the ChatGPT responses. Another useful addition would be to highlight the code generated by ChatGPT using a React syntax highlighter. This can be achieved by enclosing the code between the tags ``` and ```. I actually made a ChatGPT Clone and published it. . I added new features to my web app using your videos. Thank you very much!

  • @diamond2869
    @diamond2869 3 місяці тому

    thank you so much

  • @veeresh5341
    @veeresh5341 2 місяці тому

    Thank you @Ardian

  • @KnowledgeKingVideos
    @KnowledgeKingVideos 4 місяці тому

    The best!

  • @xspydazx
    @xspydazx 11 днів тому

    yes but how do you save a vector store ? ie export it to json for upload or finetuning into the main lm ?

  • @sivakumarkalaiselvan6831
    @sivakumarkalaiselvan6831 5 місяців тому

    Hi Bro,
    What is the extension u used in the vs code for the code suggestions?

  • @meirgoldenberg5638
    @meirgoldenberg5638 9 місяців тому +1

    How in the world did it get 0.74 score (which pretty high on the scale for 0 to 1!) for the similarity of "Hello Earth" and "OpenAI vectors and embeddings are easy"? Is there anything in common between the two?

  • @zibitappert
    @zibitappert 9 місяців тому

    would it be possible to use this for an AI NPC for training purposes in XR space for example?

  • @noubgaemer1044
    @noubgaemer1044 3 місяці тому

    thanks for the tutorial can we use our own LLM like private GPT or Text-generation Web UI instead of OPENAI

  • @BryanChance
    @BryanChance 4 місяці тому

    Does the chuck size have an affect on the quality or accuracy of the search result? Let's say I split a document into words AND in 200 word chucks. The vector results are stored in a vector db.

  • @obey24com
    @obey24com 9 місяців тому

    That was clean. Thank You!

  • @gman2036
    @gman2036 3 місяці тому

    Loved this tutorial Adrian, very straight forward and it worked the first time not like some others I've tried. Now for my question. I'm seeing this on February 2024. I did not know CHATGPT, BARD and those other AI apps until they hit the common pool that I must swim in. I take it that vectoring documents has been going on for awhile, outside of the math world. I knew of vectoring back from college in linear algebra. If this is the case, what I'm trying to do will not be new. I'm trying to vectorize my documents in order to practice doing this kind of work. So, are there IT companies out there doing this type of work already and can you name a few? How far have they gotten? Has someone already done the library of Congress for instance?

  • @psyduck4763
    @psyduck4763 5 місяців тому

    Hey man, what are those fonts you've used in this video?

  • @cliffordmwale5782
    @cliffordmwale5782 5 місяців тому

    This is very useful. Could you also do embedings of CSV files? I have files amounting up to 5 million rows

  • @MRGCProductions20996
    @MRGCProductions20996 2 місяці тому

    isnt calculating the modulus of the subtraction of the vectors a more accurate way to find similarities?

  • @pranavkm4513
    @pranavkm4513 10 місяців тому +1

    wow great video sir. Helped a lot. may i know what extension is being used in 16:40 ?

  • @edoson01
    @edoson01 10 місяців тому +1

    Blows my mind you've spent 18m talking about the How and 30sec about the why and what.

  • @paulparadise6059
    @paulparadise6059 8 місяців тому +1

    OK, it is a good video on using OpenAI to create embedding via an API. But lets say, next week. Open AI's building are destroyed by a meteor! Now, I still want to create embeddings on my dev server. Is there a software I can download and run locally that I can use until a meteor crashed on my house?

  • @fkxfkx
    @fkxfkx 10 місяців тому +1

    Bought the book. It ended on page 54, is there anything after 54 to 58?
    Last example was open ai fine tuning.
    It leaves the ft up on open ai site.
    How long will it be available there?
    Can it be brought down locally and be used in the future as local in combination with cloud model?

    • @AdrianTwarog
      @AdrianTwarog  10 місяців тому

      I’ll double check, and any updates will automatically be enabled on Gumroad!

    • @Ricocase
      @Ricocase 8 місяців тому

      ​@@AdrianTwaroghow to automate text importation with sql? Must one enter each text blob manually?

  • @Kennethlumor
    @Kennethlumor 9 місяців тому

    Sir please can you read create the boostrap navigation bar that have off-canvas customize with nice header logo and home

  • @KlrStng
    @KlrStng 9 місяців тому

    Does your book explain what kind of database that Single Store is using, and what their proprietary function "json_array_pack" is actually doing? I would like to try this out but don't want to use a service like Single Store as I prefer to just use an AWS RDS database instead (or anything that I can have full control over, or even host myself), but that function is not a real SQL function and I don't understand exactly what is going on in the background here. It looks like the Single Store function is doing some kind of encrypting of the json array data, but it's unclear in their documentation. On a different note, is converting text to vector data more efficient and more accurate for searching than something like a simple SQL "like" query, or fulltext searching? How about compared to something like SphinxSearch or AWS Elastisearch?

  • @DrAIScience
    @DrAIScience 3 місяці тому

    Is there any way to obtain embeddings of gpts from images?

  • @kareemrasheedbabatunde9026
    @kareemrasheedbabatunde9026 9 місяців тому

    Good

  • @defaultdefault812
    @defaultdefault812 8 місяців тому +4

    Well done, Langchain already exists...

  • @PrzemysawFieluba
    @PrzemysawFieluba 6 місяців тому

    Thx for content. Regards mysl database can this be achived using standard mysql? since dot_product, and JSON_ARRAY_PACK loks like functions inside of this engine.

  • @oraculox
    @oraculox 4 місяці тому

    What is the quickest way to feed recognition or pattern braking data into the system?. Or just lower the AI endorphine levels hahaha.