1
00:00:05,450 --> 00:00:11,090
In this lesson, we are going to talk about the proof of content.

2
00:00:11,300 --> 00:00:13,490
A proof of concept.

3
00:00:13,490 --> 00:00:15,140
Of concept.

4
00:00:15,800 --> 00:00:16,400
The.

5
00:00:16,400 --> 00:00:19,940
About the proof of concept phase.

6
00:00:26,540 --> 00:00:35,720
So let's talk first about the main process to develop an app a.

7
00:00:37,610 --> 00:00:40,820
Curiously, we don't start programming.

8
00:00:41,210 --> 00:00:49,520
When we start a new project, a new application, the first thing we do is drawing.

9
00:00:49,520 --> 00:00:59,870
So we need to have a graphic representation of the application we are going to build before starting

10
00:00:59,870 --> 00:01:00,620
to code.

11
00:01:00,740 --> 00:01:07,790
It's important for us to understand the different parts of our application and the different connections

12
00:01:07,790 --> 00:01:11,630
or integrations between among these different parts.

13
00:01:11,630 --> 00:01:19,730
So the first thing we do is we create a graphic with the applications structure.

14
00:01:20,300 --> 00:01:27,830
Once we have that clear, we build what we call the proof of concept.

15
00:01:28,130 --> 00:01:35,000
The proof of concept is just a prototype of the application A.

16
00:01:35,850 --> 00:01:47,550
Once we have this prototype, we try the prototype, ideally with some test users, and we confirm that

17
00:01:47,550 --> 00:01:53,100
this proof of concept meets the expectations of the project.

18
00:01:53,130 --> 00:02:03,240
Usually when we try the proof of concept, the user is going to find, you know, some, uh, mistakes

19
00:02:03,240 --> 00:02:07,320
or some missing parts or some problems in the process.

20
00:02:07,320 --> 00:02:15,840
And we will have to reevaluate our app and structure, you know, and the and the and to, to, to to

21
00:02:15,840 --> 00:02:18,390
improve the project definition.

22
00:02:18,390 --> 00:02:28,560
Once we have this prototype, uh, completely tested and approved, then we can go ahead with the next

23
00:02:28,560 --> 00:02:29,130
stage.

24
00:02:29,130 --> 00:02:35,520
That would be to build the, uh, production level, uh, application.

25
00:02:35,520 --> 00:02:48,630
So usually the person in charge of the proof of concept is the LM app developer or the LM app engineer.

26
00:02:48,930 --> 00:02:57,720
But when we go to the production phase, usually, uh, you will have a team of people working around

27
00:02:57,720 --> 00:02:58,050
that.

28
00:02:58,050 --> 00:03:06,390
In some cases, it will be the, the same LM app engineer, uh, that would be in charge of the whole

29
00:03:06,390 --> 00:03:10,050
process, even the production level application.

30
00:03:10,050 --> 00:03:18,390
But usually when you reach the production phase, you are going to find a that in most companies you

31
00:03:18,390 --> 00:03:29,040
have a multi a multi person team with, you know, front end engineers, back end engineers, database

32
00:03:29,040 --> 00:03:31,890
engineers, LM engineers etc..

33
00:03:31,890 --> 00:03:34,590
So it depends of the project.

34
00:03:34,590 --> 00:03:37,350
It depends of the company, it depends of the team.

35
00:03:37,350 --> 00:03:44,520
But usually the LM app developer is going to build the proof of concept.

36
00:03:44,520 --> 00:03:53,490
And once this proof of concept has been approved and goes into production, usually you have a software

37
00:03:53,880 --> 00:03:55,200
developer team.

38
00:03:56,910 --> 00:04:04,050
So what about the process to build the proof of concept itself?

39
00:04:04,080 --> 00:04:14,250
So this stage that, as I was telling you, is usually in charge of the LM App developer or LM app engineer,

40
00:04:14,250 --> 00:04:15,870
whatever you want to call it.

41
00:04:15,960 --> 00:04:21,000
Usually this process has four main stages.

42
00:04:21,120 --> 00:04:28,770
The first stage is the data capturing stage or the well.

43
00:04:28,770 --> 00:04:34,530
The data of an LM application can come from different sources.

44
00:04:34,560 --> 00:04:38,910
It can come from files, from databases, from the web, whatever.

45
00:04:38,910 --> 00:04:41,250
If if it comes from the web.

46
00:04:41,340 --> 00:04:47,430
For example, we will use a technique to grab the data that is called web scraping.

47
00:04:47,430 --> 00:04:53,340
If the data comes from databases or files or whatever, we will use different techniques.

48
00:04:53,340 --> 00:05:01,620
So the first step, when you are building a proof of concept application usually is getting the data

49
00:05:01,620 --> 00:05:02,790
in a proper way.

50
00:05:03,150 --> 00:05:14,430
The second step step would be to a to design the main logic of the proof of concept application with

51
00:05:14,430 --> 00:05:16,980
the orchestration framework.

52
00:05:16,980 --> 00:05:25,050
So you would use long chain or lambda index in most cases, but in some cases you would use directly

53
00:05:25,050 --> 00:05:27,330
the API of OpenAI etc..

54
00:05:27,330 --> 00:05:27,660
Right.

55
00:05:27,660 --> 00:05:30,990
So second step orchestration framework.

56
00:05:31,380 --> 00:05:37,770
Third stage in most cases would be to introduce the vector database.

57
00:05:37,770 --> 00:05:46,830
When you are in the proof of concept stage, usually you are going to use a very simple vector database,

58
00:05:46,830 --> 00:05:52,710
for example files, which is a very, very simple version of vector databases.

59
00:05:52,710 --> 00:06:01,350
When you move into a production stage, usually you are going to use a more robust, more serious vector

60
00:06:01,350 --> 00:06:05,880
databases like like Postgres for example, or pinecone, etc..

61
00:06:06,060 --> 00:06:14,250
And finally, the fourth step in the proof of concept stage is the a user interface.

62
00:06:14,670 --> 00:06:23,220
In this case, in the in the proof of concept stage, we are going to use a very simple user interface.

63
00:06:23,220 --> 00:06:27,300
Like Streamlit, Streamlit is the most popular.

64
00:06:28,080 --> 00:06:31,770
A interface for temporary user interface.

65
00:06:32,250 --> 00:06:38,880
The most popular framework that we see to create temporary user interfaces.

66
00:06:38,910 --> 00:06:39,390
Okay.

67
00:06:39,390 --> 00:06:41,070
So remember.

68
00:06:42,000 --> 00:06:46,410
One thing is the process to develop an application.

69
00:06:46,440 --> 00:06:50,850
The other thing is the process to build a proof of concept.

70
00:06:52,200 --> 00:06:59,160
Excuse me, which is just one phase of the whole process of developing an application.

71
00:07:00,020 --> 00:07:04,820
And remember the four stages of a.

72
00:07:05,030 --> 00:07:11,210
The proof of concept stage of proof of concept process would be.

73
00:07:11,210 --> 00:07:13,490
First, get the data.

74
00:07:13,520 --> 00:07:19,010
Second, a write the main logic with an orchestration framework.

75
00:07:19,040 --> 00:07:19,880
Third.

76
00:07:20,490 --> 00:07:23,100
Use a simple vector database.

77
00:07:23,130 --> 00:07:27,000
Fourth, use a simple user interface.

78
00:07:27,940 --> 00:07:28,720
In the next.

79
00:07:28,750 --> 00:07:36,250
In the next lesson, we are going to see some basic concepts around Streamlit.

