Build a RAG app in minutes using Langflow OpenAI and Azure | StudioFP101

Microsoft Developer
30 May 202416:11

Summary

TLDRカーター・ラバサ氏はDataStaxの開発者関係部門の責任者として、開発者がLangflow、Astro DB、Azureを使用してRAG(リトライバル・オーギュメント・ジェネレーション)アプリケーションを構築する方法について語りました。ラバサ氏は、Langflowを使いながら、Wikipediaのデータをもとにインテリジェントなチャットボットを作成し、それをPythonのFlaskアプリケーションに統合し、Azureに展開するプロセスを説明しました。また、LangSmithというツールを使ってAIアプリケーションの可視化を紹介し、開発者が機械学習エンジニアでなくてもAIアプリケーションを構築できるようになっていると強調しました。

Takeaways

  • 🚀 DataStax社のCarter Rabasaが開発者向けにRAG(Retrieval-Augmented Generation)アプリケーションの構築方法を紹介。
  • 🛠️ Langflowツールを使ってRAGアプリケーションを構築し、その後PythonのFlaskアプリケーションに組み込む方法を説明。
  • 🔄 Microsoft Azureにアプリケーションを展開し、LangSmithを利用して可視性機能を紹介。
  • 📚 RAGは、プライベートデータやファイアウォール内にあるデータに対しても動作する知能型ソフトウェアを構築する手法。
  • 🤖 LLM(Large Language Models)はパブリックデータのみを学習源としており、プライベートデータについてはRAGがその解決策。
  • 📈 Langflowの視覚的なインターフェースを通じてAIフローの構築と実行が可能で、開発が容易。
  • 📝 記事やWikipediaページなどのデータをベクターデータベースに取り込み、埋め込みモデルを用いてベクターへの変換を行う。
  • 🔍 ベクター検索を用いて質問に関連する最も重要なドキュメントを取得し、LLMに提示して答えを得るプロセスを紹介。
  • 💰 Langflowを通じてOpenAIなどのホステッドLLMに渡すデータ量を減らし、コスト効率を高める方法を学ぶ。
  • 🔧 LangFlowはPythonのみ対応で、LangChainフレームワーク上にあると同時にLangSmithはAIアプリケーションの可視性向上に役立つ。
  • 🌐 Azureを用いてアプリケーションをコンテナ化し展開する方法を簡単に説明し、AIアプリケーションのデプロイメントの容易さを強調。

Q & A

  • カーター・ラバサはDataStaxでどのようなポジションを担当していますか?

    -カーター・ラバサはDataStaxの開発者リレーションズ部門の責任者を務めています。

  • RAGアプリケーションとは何ですか?

    -RAGとはRetrieval Augmented Generationの略で、プライベートデータやファイアウォールの内側にあるデータに基づく知能型ソフトウェアを構築する際に使用される技術です。

  • Langflowはどのようなツールですか?

    -LangflowはAIフローをビジュアルエディターを使って構築するためのツールで、PythonのFlaskアプリケーションに組み込むことができます。

  • Astro DBはどのようなデータベースですか?

    -Astro DBはDataStaxが提供するベクターデータベースで、非ベクターデータとベクターデータを両方保管することができます。

  • ベクター埋め込みモデルとは何を意味しますか?

    -ベクター埋め込みモデルとはテキストを長方形の数字の配列、つまりベクター空間内のポイントに変換するモデルです。これにより、類似する概念やデータが近くに集まります。

  • LangSmithはどのようなツールですか?

    -LangSmithはAIアプリケーションの可視性と可観察性を提供するツールで、LLM呼び出しに関する情報を追跡し、デバッグを容易にします。

  • カーターはどのようにしてDune 2に関する情報を含むチャットボットを作成しましたか?

    -カーターはWikipediaのDune 2のページをベクターデータベースに取り込み、Langflowを使ってRAGアプリケーションを作成し、その後PythonのFlaskアプリケーションに組み込みました。

  • OpenAIのAPIを使用する際に料金がかかるのはどのような基準に基づいていますか?

    -OpenAIのAPIを使用する際の料金は、渡されたデータの量に基づいて決まります。つまり、LLMに渡されるトークンの数によって課金されます。

  • LangFlowは現在どのプログラミング言語と互換性がありますか?

    -LangFlowは現在、Pythonのみと互換性がありますが、LangChainというフレームワークの上に構築されています。

  • AIアプリケーションを構築する際にLangSmithはどのように役立ちますか?

    -LangSmithはAIアプリケーションのLLM呼び出しに関する詳細情報を提供し、モデルプロバイダーや使用モデル、トークン数、コストなどを見ることができます。

  • カーターはどのようにしてAzureにアプリケーションを展開しましたか?

    -カーターはDockerファイルを作成し、Gunicornを設定してローカルでビルドし、Azure CLIを使用してAzureに展開しました。

Outlines

00:00

😀 RAGアプリケーションの構築方法

カーター・ラバサはDataStaxの開発者関係部門の責任者として、開発者がLangflow、Astro DB、Azureを使用してRAG(検索強化された生成)アプリケーションを構築する方法について話します。カーターは、Langflowを使用してRAGアプリケーションを構築し、次にそれをPythonのFlaskアプリケーションに統合し、Microsoft Azureに展開するプロセスを説明します。また、LangSmithを使用して可視性機能を紹介し、時間があればラップアップとQ&Aを行います。カーターはDataStaxで働く開発者関係の専門家であり、最近AIプログラミングを始めました。

05:01

📚 RAGの基礎とデータベースの使用

カーターはRAG(検索強化された生成)の概念を説明し、LLM(大規模言語モデル)が公開されているデータでトレーニングされる一方で、プライベートデータの場合にはRAGがそのギャップを埋めると語ります。次に、Wikipediaのページを使用して、どのようにデータをベクターデータベースであるAstro DBに取り込み、それを使用してチャットボットを作成するかのデモンストレーションを行います。ベクターデータベースは、自然言語モデルが生成するベクターを保存し、類似する概念を近くに集める機能を持ちます。

10:03

💻 LangFlowを使ったアプリケーション開発

カーターはLangFlowを使用してAIフローをビジュアルエディタで作成し、その後Pythonアプリケーションに統合する方法を紹介します。LangFlowはLangChainフレームワークに基づいており、Pythonコードとしてエクスポートできます。カーターは、FlaskアプリケーションにLangFlowコードを貼り付け、JSONファイルを使用してフローを実行するデモンストレーションを行います。また、LangFlowは現在Python専用であり、LangChainの上に構築されています。

15:03

🚀 Azureへの展開とLangSmithの可視性機能

カーターは、作成したアプリケーションをAzureに展開し、Dockerを使用してコンテナ化する方法を説明します。さらに、LangSmithというツールを使用して、AIアプリケーションの可視性とデバッグを向上させる方法も紹介します。LangSmithは、APIキーを通じて簡単に統合でき、モデルプロバイダーや使用モデル、トークン数、コストなどの情報を提供します。カーターは、これらのツールがAIアプリケーションの構築を容易にし、誰もがAIアプリケーションを構築できると結び付けます。

🎉 総括と参加者へのメッセージ

カーターはプレゼンテーションを締めくくり、参加者に感謝の言葉を述べ、さらに質問がある場合はQRコードをスキャンしてリソースにアクセスできると案内します。また、DataStaxのブースやフィーチャーパートナーディレクトリでカーターの活動についてもっと知ることができます。

Mindmap

Keywords

💡DataStax

DataStaxは、分散型データベースの開発と提供を行う企業です。このビデオでは、DataStaxが提供するAstro DBというベクターデータベースについて触れられています。Astro DBは、非ベクターデータとベクターデータを一緒に保管することができる特徴があります。

💡Langflow

Langflowは、AIフローをビジュアルエディターで作成できるツールです。ビデオでは、Langflowを使ってWikipediaのページをインジェストし、チャットボットを作成するプロセスが説明されています。LangflowはPythonで動作し、AIアプリケーションの開発を簡素化する役割を果たしています。

💡RAG (Retrieval-Augmented Generation)

RAGは、リトリーブ・オーグメントド・ジェネレーションの略で、LLM(大規模言語モデル)に外部データを提供してより良い応答を得るための手法です。ビデオでは、RAGを使ってWikipediaのデータを使ってDune 2に関する情報を持つチャットボットを構築する例が紹介されています。

💡Astro DB

Astro DBはDataStaxが提供するベクターデータベースです。ビデオでは、Astro DBを使用してテキストデータをベクター埋め込みに変換し、データベースに保管することで、より正確なAI応答を得る方法が説明されています。

💡LLM (Large Language Models)

LLMは大規模言語モデルの略で、大量のデータを学習して自然言語を理解し応答することができるAIモデルです。ビデオでは、LLMが公開データのみを学習するため、プライベートデータについては知ることができないという問題と、RAGを用いてその問題を解決する手法が議論されています。

💡Embedding Model

埋め込みモデルは、テキストデータを数値ベクターに変換するAIモデルです。ビデオでは、Wikipediaのページを埋め込みモデルに通過させ、テキストをベクター埋め込みに変換してAstro DBに保管するプロセスが説明されています。

💡Vector Search

ベクター検索は、類似する概念を持つデータを特定するために使用される検索手法です。ビデオでは、質問のテキストをベクターに変換し、それを用いてAstro DBから関連性の高いドキュメントを検索するプロセスが紹介されています。

💡LangChain

LangChainは、AIアプリケーションを構築するためのフレームワークです。ビデオでは、LangflowがLangChainの上に構築されており、Pythonコードを用いてAIフローを実装することができると説明されています。

💡LangSmith

LangSmithは、AIアプリケーションの可視化と監視を行うためのツールです。ビデオでは、LangSmithを使ってLLMの呼び出しを監視し、トークンの使用数やコストを確認することができると紹介されています。

💡Flask

FlaskはPythonで書かれた軽量のウェブフレームワークです。ビデオでは、Flaskを使って作成されたウェブアプリケーションが、LangflowからエクスポートされたAIフローを実行する例が説明されています。

Highlights

Carter Rabasa, head of developer relations at DataStax, discusses building RAG applications with Langflow, Astro DB, and Azure.

RAG stands for retrieval augmented generation, a method to enhance AI with private data.

Langflow is introduced as a tool for building AI flows with a visual interface.

Astro DB from DataStax is highlighted as a vector database that can store both non-vector and vector data.

Vector embeddings are explained as points in space representing concepts, with similar concepts grouped together.

Langflow's visual editor is demonstrated for creating an AI chatbot with data from a Wikipedia page.

The process of ingesting data into a vector database and using it to enhance AI responses is detailed.

Langflow's interactive playground is shown to test the chatbot's functionality.

Efficiency in AI interactions is emphasized by passing less data to the LLM for cost and accuracy benefits.

LangFlow's capability to export flows as Python code and JSON files for integration into applications is discussed.

A Python Flask application is demonstrated to integrate the chatbot flow into a web app.

LangChain is mentioned as the underlying framework for building AI applications that LangFlow is built upon.

LangSmith is introduced as an observability tool for monitoring and debugging AI applications.

The deployment process of the AI application to Microsoft Azure using containers is outlined.

LangSmith's ability to provide insights into LLM calls, including model usage and token costs, is highlighted.

Carter emphasizes that building AI applications is accessible to developers without a machine learning background.

A QR code is provided for accessing more resources on the tools and techniques presented in the discussion.

Transcripts

play00:09

SPEAKER 1: I am joined right

play00:11

now by Carter Rabasa,

play00:12

who's the head of developer relations at DataStax.

play00:15

DataStax. Data, Data.

play00:18

Tomato-tomato. How are you doing?

play00:20

CARTER RABASA: That's right.

play00:20

I'm doing awesome.

play00:21

SPEAKER 1: Cool.

play00:22

What are we talking about today?

play00:24

CARTER RABASA: We're going to talk about

play00:25

how developers can build

play00:26

RAG applications using Langflow,

play00:29

Astro DB, and Azure.

play00:30

I'm going to be flying through this, so buckle up.

play00:33

SPEAKER 1: I got my seatbelt on.

play00:35

CARTER RABASA: First I'm

play00:36

going to show you how you can build

play00:37

RAG applications using this awesome tool called Langflow.

play00:40

After we use Langflow,

play00:42

I'm going to show you how you can take

play00:43

what you built and bake

play00:45

it into just a regular Python flask application.

play00:48

Then we're going to deploy this to Microsoft Azure.

play00:50

I'm going to show you

play00:51

some cool observability capabilities

play00:53

using something called LangSmith.

play00:55

Then if we have time, we'll do some wrap-up in Q&A.

play00:58

First, my name is Carter Rabasa.

play01:00

SPEAKER 1: Hi, Carter.

play01:01

CARTER RABASA: Hello.

play01:02

My pronouns are He-Him.

play01:04

As mentioned, I work in developer relations at DataStax,

play01:08

and I'm just a huge gen AI nerd.

play01:10

But I only started doing this about six months ago.

play01:13

So I'm really new to AI programming,

play01:15

and after talking to a lot of people here at Build,

play01:18

I think you are all pretty new to it too, right?

play01:21

SPEAKER 1: Yes.

play01:21

CARTER RABASA: So we're

play01:21

all learning this together.

play01:23

I want to start by saying, what is RAG?

play01:27

SPEAKER 1: Thank you.

play01:28

CARTER RABASA: That acronym has

play01:29

been popping up, it's everywhere.

play01:31

It stands for retrieval augmented generation.

play01:34

Still not helpful.

play01:36

The way that I like to think about

play01:37

RAG is with this Iceberg metaphor.

play01:40

LLMs are trained on public data,

play01:44

they scrape the Internet, and that's what they know.

play01:46

But if you want to build an intelligent piece of

play01:49

software that operates on data that isn't public,

play01:52

it's behind your firewall,

play01:54

it's in your database. Well, how do you do that?

play01:56

Because the LLMs don't know

play01:58

about the stuff that's in your SQL server.

play02:00

That's where RAG comes in.

play02:03

It's time to buckle up. We're going to do some coding.

play02:07

First, I'm going to be mean.

play02:09

I'm going to show you where LLMs

play02:11

fail by asking about one of my favorite movies.

play02:14

I'm going to ask when was Dune 2, released in theaters.

play02:22

SPEAKER 1: March 2024?

play02:24

CARTER RABASA: Pretty close.

play02:25

SPEAKER 1: Is that close?

play02:25

CARTER RABASA: Well, guess what?

play02:26

Guess who doesn't know.

play02:27

SPEAKER 1: ChatGPT.

play02:28

CARTER RABASA: ChatGPT doesn't know.

play02:29

In fact, he doesn't

play02:30

even know that there was a Dune 2, movie.

play02:31

SPEAKER 1: No.

play02:31

CARTER RABASA: Now, look,

play02:32

you guys think I'm cheating.

play02:33

You're like, "Carter, use a newer LLM,

play02:36

it'll know about Dune 2."

play02:38

Sure. But that doesn't matter,

play02:41

because those new LLMs still

play02:43

don't know about your private data,

play02:45

the stuff behind the firewall,

play02:46

and that's where RAG comes in.

play02:48

What I want to do is, I'm going to use,

play02:51

I'm a Dune 2, fanboy.

play02:52

I'm a Dune fanboy. I'm a Dani Villanueva fanboy.

play02:55

SPEAKER 1: Oh, he's so talented.

play02:56

CARTER RABASA: We're going to use

play02:59

ChatGPT 3.5,

play03:01

with data from this Wikipedia page,

play03:03

to build an intelligent chatbot.

play03:05

How are we going to do that? First, I'm

play03:08

going to use resources for Microsoft.

play03:10

This is just a quick start that I found on

play03:13

your documentation that shows

play03:15

me how to build a simple Flask app,

play03:17

and how to deploy it to Azure using containers.

play03:19

I'm just getting started by cloning this repo,

play03:23

and I'm using this as a basis

play03:24

for building this chat application.

play03:26

I'm doing this because I want to prove

play03:28

to you that you can use

play03:29

these tools I'm about to show you

play03:31

with the toolchains that you already use.

play03:34

I've gone ahead and clone this,

play03:36

and here's Visual Studio Code.

play03:38

What I'm going to do is I'm going to add

play03:40

a tool called Langflow.

play03:44

That's as easy as pip install Langflow.

play03:47

I'm going to show you my ReadMe,

play03:48

you're just going to pip install Langflow.

play03:51

Then once you pip install it,

play03:53

you can run it from the command line,

play03:55

and it's going to spawn

play03:56

this web-based visual editor for building these AI flows.

play04:01

It looks exactly like this.

play04:03

I've gone ahead and created a Dune 2 chatbot.

play04:07

SPEAKER 1: Oh, I love these.

play04:09

I'm a visual person, so I like [inaudible]

play04:11

CARTER RABASA: Well I'm going to zoom out.

play04:12

I'm going to zoom out for a minute.

play04:13

Building RAG applications is a two-step process.

play04:16

First you have to take the data that the LLMs don't know,

play04:19

and you have to ingest it into a vector database.

play04:22

Let's talk about that.

play04:24

I'm going to zoom in. That's what's happening right here.

play04:27

I am taking the URL for the Wikipedia page,

play04:30

and I'm ingesting it into my application.

play04:33

I'm then running it through something called

play04:35

a recursive character text splitter.

play04:37

It's taking that whole Wikipedia page and

play04:40

breaking it into chunks of 1,000 characters.

play04:43

Then I'm taking all of those chunks,

play04:45

and I'm storing them in my vector database.

play04:48

But before I do it, I'm going to run it

play04:50

through something called an embedding model.

play04:52

I'm going to take that text,

play04:54

and I'm going to convert it into

play04:55

something called vector embeddings,

play04:57

and I'm going to store the text and

play04:58

the embeddings in the vector database.

play05:01

Astro DB is the vector database from DataStax.

play05:05

It allows you to store non-vector data.

play05:09

Here on the right are

play05:10

all the chunks from the Wikipedia page.

play05:12

But it also allows you to store vector data,

play05:15

which is what we got from the LLM.

play05:17

SPEAKER 1: We say vector data, that's

play05:19

another term that gets floated around.

play05:20

CARTER RABASA: I know, sorry. Vectors are

play05:22

these really long arrays of numbers.

play05:25

The way that I would ask you to visualize it,

play05:27

if you give an LLM the word Dog,

play05:30

it'll create a vector that's like a point in space.

play05:33

If you give it the word Cat,

play05:34

it'll give it another point in space that's near Dog.

play05:37

But if you give it the word Truck,

play05:39

it's a point the way over here.

play05:41

These vectors represent points in space,

play05:44

and similar concepts and

play05:46

similar data get grouped together.

play05:49

I'm going to show you how that works with vector search.

play05:52

SPEAKER 1: So the closer they

play05:53

are, the more similar?

play05:54

CARTER RABASA: Absolutely.

play05:55

Now we've ingested our data.

play05:58

There are 105 chunks of data in my database.

play06:01

Now we're going to build the chat experience.

play06:04

That is what we have right here.

play06:06

I'm going to go ahead and run this using

play06:08

the interactive playground that's built into Langflow.

play06:11

Let's go ahead and ask the question that failed.

play06:14

When was the movie released?

play06:19

Hopefully it will say March 1st,

play06:22

because that is the truth.

play06:23

Indeed very soon it will.

play06:26

Awesome, March 1st, 2024.

play06:28

But I want to show you how that happened.

play06:31

Let's zoom in and walk through the steps.

play06:34

We asked the question.

play06:36

The question itself is converted into a vector.

play06:40

It's converted into that array of numbers.

play06:42

That vector is then used to execute a vector search.

play06:45

Remember, I can show you.

play06:48

We have 105 documents in my vector store,

play06:52

but we don't need all 105 to answer the question.

play06:55

I'm going to execute

play06:57

a vector search on the vector created from the question.

play07:01

I'm going to get the top four documents back,

play07:03

and I'm going to pass those four documents

play07:05

to something called a prompt.

play07:08

This is my prompt.

play07:11

All of the content from the database is

play07:15

being injected into this variable called context.

play07:18

Then I'm telling the LLM,

play07:20

given the context,

play07:21

answer the question as best as you can.

play07:24

Then I remind the LLM what the question was.

play07:27

Now, one thing that's great about LangFlow is that

play07:30

you can see the data as it flows through the system.

play07:33

I can hover over this and I can see

play07:37

the results from my vector search and then over here,

play07:42

I can hover over this,

play07:45

and I can actually see the entire prompt that I

play07:48

construct all the way

play07:50

down to the question that I'm asking.

play07:53

SPEAKER 1: It's so

play07:53

be long prompt, too.

play07:54

CARTER RABASA: Yeah, but here's the deal.

play07:56

Here's what I want everyone to remember.

play07:58

When you use OpenAI to ask these questions,

play08:03

OpenAI is charging you

play08:05

based on how much data you pass it.

play08:07

If I hover my mouse over here,

play08:09

I can see that I passed it 1,096 tokens of data.

play08:14

OpenAI and all these hosted LLMs

play08:16

charge you based on the number of tokens.

play08:18

It's important to know that not only are you saving

play08:22

money by passing less information to the LLM,

play08:25

you're also getting more accurate answers.

play08:28

If you pass information to the LLM,

play08:31

like the entire Wikipedia page where most of

play08:34

the data on that page is

play08:36

completely irrelevant to the question that I asked,

play08:39

there's a chance that the LLM is going to

play08:40

hallucinate and maybe give you a wrong answer.

play08:43

So using a vector database and using

play08:46

vector search gives you more accurate answers,

play08:48

and it saves you money with your LLM.

play08:50

SPEAKER 1: So less is more.

play08:51

CARTER RABASA: Yeah, less is more.

play08:52

Anyway,

play08:53

so we've built this flow.

play08:55

We're happy with it, but now it's not an app yet.

play08:57

We want to turn this into an app that people can

play08:59

use. Let's do that.

play09:00

We're going to click on API,

play09:02

and we're going to go over to Python

play09:03

code and all you have to

play09:05

do is copy this code

play09:07

and paste it into your Python application.

play09:09

You also are going to export this flow as a JSON file,

play09:14

download that, and then

play09:16

you're going to reference that in your application.

play09:18

Let's switch over to Visual Studio

play09:19

code and see what that looks like.

play09:21

SPEAKER 1: Also, is LangFlow

play09:22

just Python compatible,

play09:23

or can you use other languages with it?

play09:24

CARTER RABASA: No.

play09:25

That's a great question,

play09:26

and thanks for asking.

play09:27

Right now, LangFlow is only for Python,

play09:30

but this is actually really useful for y'all to know.

play09:33

Everything that you're seeing is Python code,

play09:35

and everything that you've seen is actually

play09:37

built on top of a tool called LangChain.

play09:40

LangChain is the most popular framework

play09:42

for building AI applications and

play09:44

LangFlow is this fantastic UI built on top of LangChain.

play09:48

I'm going to go back to my Python application.

play09:51

This is what it looks like. Remember, this is

play09:53

just what I cloned from the QuickStart.

play09:55

All I did was paste in that code that you saw,

play09:58

and then down here,

play10:00

I'm going to create a route called chat,

play10:02

and I'm going to invoke LangFlow

play10:04

using this run flow from JSON method.

play10:07

I'm going to give it the name of my JSON file,

play10:10

and I'm going to pass in

play10:11

the input value that I get from my web form.

play10:14

Let's see what that looks like.

play10:16

I'm going to go ahead and fire up

play10:17

flask and show you exactly what this web app looks like.

play10:22

Boom. This is going to be running locally on port 5,000.

play10:26

Let's go over to my browser

play10:28

and reload this page and press Store.

play10:31

You've got my web app so let's go

play10:33

ahead and ask it a new question.

play10:34

I'm going to ask it, what was the meme about?

play10:39

Do you know what meme I'm talking about? Do you remember?

play10:42

SPEAKER 1: Actually? I don't remember.

play10:43

CARTER RABASA: Well, let's see what

play10:44

the chatbot says.

play10:46

There was a meme about Dune-themed popcorn bucket,

play10:50

the famous sandworm popcorn bucket.

play10:54

SPEAKER 1: I wanted one

play10:54

of those so bad.

play10:55

CARTER RABASA: Oh, I've got two. Anyway,

play10:57

so the chatbot now knows everything about Dune 2,

play11:02

including the hilarious meme about the popcorn bucket.

play11:05

Now, all this left for us

play11:06

is getting this deployed to production.

play11:09

SPEAKER 1: The world needs to know.

play11:10

CARTER RABASA: The world needs to know

play11:11

about popcorn buckets.

play11:13

Doing that is just super easy.

play11:15

You can use Azure to

play11:16

provision a container application and then,

play11:20

once again, like I'm new to this.

play11:22

All I did was follow the instructions on the QuickStart.

play11:25

I created this docker file.

play11:28

I configured guncorn.

play11:31

I built it locally,

play11:32

and then I deployed it to Azure using the Azure CLI.

play11:36

It was insanely easy

play11:38

and then next thing you know, here it is.

play11:40

Deployed to Azure Container apps dot O.

play11:43

But of course, you can build

play11:45

your own custom URL or domain for this app.

play11:49

SPEAKER 1: I'm doing mine for

play11:50

Dune Messiah when that comes out.

play11:51

CARTER RABASA: There you go.

play11:52

Awesome. I'm going

play11:52

to build the Dune 2 fanbot,

play11:53

you build the Dune Messiah chatbot.

play11:55

We'll team up on this.

play11:57

The last thing I want to show you before I step away

play12:00

is an amazing observability tool called LangSmith.

play12:04

As I mentioned, LangFlow is built on top of LangChain.

play12:09

LangChain is this super popular framework

play12:12

for building AI apps.

play12:13

Without adding a single line of code,

play12:16

all I had to do was create

play12:17

a LangSmith account and get an API key.

play12:21

All I had to do was put that API key in

play12:24

an environment variable when I deployed

play12:26

it to the container and then automatically,

play12:29

LangSmith has gives me

play12:30

observability to all my LLM calls, so check it out.

play12:34

I can look at the most recent call that I made.

play12:37

This is the call where I asked about the meme.

play12:41

This is all the content that it got back from

play12:43

my vector database. I can go back.

play12:45

I can go all the way to the bottom and I

play12:47

can find the question that I asked,

play12:50

and I can see down here in the output,

play12:51

what the output from the LLM was.

play12:53

But also, I have information about

play12:55

which model provider I used.

play12:58

Exactly what model I used,

play13:00

and even how many tokens

play13:02

I used and what the cost of this was.

play13:05

When you're building these AI applications

play13:07

and you're deploying them,

play13:08

sometimes they can be hard to debug because there's a lot

play13:11

of chattiness between your app

play13:13

and the LLM and LangSmith is

play13:16

this fantastic tool for giving you

play13:18

observability and visibility into

play13:19

what's happening with the LLM.

play13:21

Anyway, going back to my presentation,

play13:25

I hope that in this time,

play13:27

y'all feel that you do not need

play13:29

to be a machine learning engineer to do these things.

play13:32

You do not need to have

play13:34

a giant data science team to do these things.

play13:37

These tools have gotten so good and so

play13:40

easy that even a very mediocre web developer like

play13:43

me can build a pretty reasonable AI application

play13:47

and so can you?

play13:49

I'll just wrap up real fast.

play13:51

Thank you so much for having me.

play13:53

If you have any questions that I didn't answer,

play13:56

scan this QR code.

play13:57

It'll send you to a web page that has

play13:58

more resources on all of the things that I showed you,

play14:02

and thanks so much for having me.

play14:04

SPEAKER 1: Sweet.

play14:04

You did it with one minute to spare.

play14:06

Thanks. That was great

play14:10

and what you said about AI

play14:11

being for everyone with tools like that,

play14:13

it really does feel that way.

play14:15

I just really enjoy

play14:20

seeing that there's stuff for visual people like me,

play14:22

with LangFlow to be able to break them all down.

play14:25

Be able to see the cost of things I

play14:27

think is very important at the end of the day

play14:30

so having all those tools to make it easy

play14:32

to manage the LLMs that you're working with,

play14:35

as well as being able to put out

play14:37

your general flow of events for the AI chat.

play14:40

CARTER RABASA: No doubt.

play14:40

Then also, it's really important.

play14:42

There's a lot of conversations about responsible AI.

play14:46

We need more people and more people building AI apps.

play14:50

SPEAKER 1: Absolutely.

play14:51

CARTER RABASA: I just think

play14:52

these tools are making that possible.

play14:54

SPEAKER 1: Sweet.

play14:54

Well, thank you so much, Carter.

play14:56

Again, if you want to learn more about

play14:57

data stacks or the work that Carter is doing,

play14:59

please go check out their booth,

play15:00

or you can check them out on

play15:01

the feature partner directory.

play15:03

Thanks Carter, and thanks y' all.

play15:04

CARTER RABASA: Awesome. Thank you.

play15:05

SPEAKER 1: Bye.

Rate This

5.0 / 5 (0 votes)

Related Tags
DataStaxLangflowAstro DBRAGAzure開発者AIアプリケーションチャットボットベクターデータベース可視性ツールLangSmith
Do you need a summary in English?