Full Transcript

·YouTLDR

Complete Production RAG Masterclass | LangGraph, Re-Ranking, Evaluation & Optimization

3:48:58ArabicTranscribed Jul 27, 2026
0:01

في الوقت الحالي، يقوم الجميع ببناء رفوف

0:03

الأنظمة. قم بتحميل بعض المستندات، ثم أنشئ

0:05

قم بتخزين التضمينات في متجه

0:07

قاعدة البيانات، واسترجاع أجزاء منها، وإرسالها

0:09

للحصول على درجة الماجستير في القانون. وفجأة، يعتقد الناس

0:12

لقد قاموا ببناء أنظمة ذكاء اصطناعي ذكية. لكن

0:15

هناك مشكلة كبيرة هنا. معظم الرفوف

0:18

خطوط الأنابيب في الواقع شديدة للغاية

0:20

قابل للكسر. إنهم يفشلون في الإجابة على الأسئلة المعقدة.

0:23

إنهم يسترجعون سياقاً غير ذي صلة. هم

0:25

تخيّل بثقة. والأسوأ

0:27

جزء، ليس لديهم أي فكرة على الإطلاق متى

0:30

إنهم مخطئون. أعمال الخرق التقليدية

0:33

مثل طالب يؤدي امتحانًا

0:35

يُسمح بالبحث في كتاب مدرسي

0:37

واحد فقط. استرجاع واحد، تخمين واحد، واحد

0:40

الإجابة النهائية. لا انعكاس، لا

0:42

التحقق وعدم وجود آلية لإعادة المحاولة

0:45

لا يوجد أي تبرير بشأن ما إذا كان الاسترجاع

0:47

هل المعلومات مفيدة أم لا؟ و

0:50

بدأت تلك الهندسة المعمارية في التحول

0:52

قديمة لأن الجيل القادم من

0:55

لا تقتصر أنظمة الذكاء الاصطناعي على الاسترجاع فقط

0:58

معلومة. يفكر قبل

1:00

جارٍ الاسترجاع.

1:01

تستطيع أنظمة الذكاء الاصطناعي الحديثة الآن إعادة كتابة...

1:04

استعلامات خاصة، تقييم الاسترجاع

1:06

المستندات، اكتشاف السياق غير المناسب، إعادة المحاولة

1:08

عمليات البحث الفاشلة، واتخاذ القرار بشكل ديناميكي

1:11

ماذا نفعل بعد ذلك؟ لذا بدلاً من ثابت

1:14

خط الأنابيب، لدينا الآن نظام تشغيل ذاتي

1:17

أنظمة الاسترجاع وهذا ما يسمى

1:20

جريدة دبلوماسية. وفي هذا الفيديو، نحن

1:23

سأقوم ببناء واحد من الصفر باستخدام

1:25

النظام البيئي لانغين وlangraph. أ

1:27

نظام استرجاع قادر على الاستدلال،

1:30

التفكير والتصحيح الذاتي والتحسين

1:33

عملية استرجاع خاصة بها بشكل مستقل. لا

1:36

النظرية، وليس الرسوم البيانية في برنامج باوربوينت.

1:38

تطبيق عملي فعلي. لأن

1:41

يسترجع برنامج بسيط المعلومات، لكن

1:43

يتعلم جهاز الخرق الوكيل كيفية الاستعادة

1:46

بذكاء وصدق، هذا ما يحدث.

1:50

كل شئ. فلنقم ببنائه.

1:54

قبل أن نبدأ في بناء النظام،

1:56

نحتاج إلى فهم ما الذي يتغير فعلياً

1:58

عندما ننتقل من موسيقى الراغتايم التقليدية إلى

2:00

جريدة دبلوماسية. لأن النظرة الأولى

2:03

كلاهما يبدوان متشابهين. لا يزال لديك

2:06

لا تزال لديك ملفات مضمنة في المستندات.

2:08

لا يزال بإمكانك استرجاع السياق، ولا تزال

2:10

قم بتمريرها إلى برنامج ماجستير في القانون. لكن الحقيقة

2:13

الفرق ليس في المكونات.

2:15

يكمن الأمر في سلوك النظام.

2:17

دعونا نحلل الأمر. في تقليد

2:19

خط أنابيب الرف، العملية ثابتة. أ

2:23

يطرح المستخدم سؤالاً، فنقوم باسترجاع أفضل K سؤالاً

2:26

المستندات، وسنقوم على الفور بإنشاء

2:29

إجابة. هذا كل شيء. لا قرارات، لا

2:31

التكرار، لا ذكاء فيه

2:33

خط الأنابيب نفسه. يفترض النظام واحداً

2:36

خطوة الاسترجاع كافية، وهذا

2:39

الافتراض هو بداية فشل الأمور

2:42

لأن الاستفسارات في العالم الحقيقي

2:44

المعلومات نادرا ما تكون مثالية.

2:46

يمكن استرجاعها بضربة واحدة. بعض الأسئلة

2:49

بعضها غامض، وبعضها يتطلب استعلامًا أفضل

2:52

التركيبة. يحتاج البعض إلى عدة

2:54

محاولات الاسترجاع وبعض الاحتياجات

2:56

وجهات نظر مختلفة تمامًا

2:58

بيانات. وهنا يأتي دور الوكالة

3:01

يغير قواعد اللعبة. بدلاً من العلاج

3:04

الاسترجاع كخطوة واحدة، نقوم بتحويله

3:06

في عملية صنع القرار. نحن

3:09

تقديم وكيل يمكنه التحكم في

3:12

مسار الاسترجاع. والآن قبل

3:14

يستطيع النظام استرجاع أي شيء

3:16

أولاً، أعد كتابة استعلام المستخدم. يمكنه أن يسأل

3:19

ما هي أفضل طريقة للحصول على المصادر؟

3:21

لهذا السبب. ثم يقوم باسترجاع المستندات،

3:25

لكنها لا تثق بهم ثقة عمياء. هو - هي

3:27

يقوم بتقييمها. يتحقق من ذلك

3:32

يتحقق من مدى صلة هذا الأمر بـ

3:34

السؤال، وإذا كانت الإجابة بالنفي،

3:37

لا يتوقف، بل يعود ويصقل.

3:40

يحاول الاستعلام مرة أخرى، وهو في الأساس

3:43

يحسّن استراتيجية الاسترجاع الخاصة به و

3:46

هذه هي الفكرة الأساسية التي لم نعد

3:49

نحن نبني خط أنابيب

3:51

حلقة

3:53

نظام قادر على التفكير في نفسه

3:55

عملية الاسترجاع، لذا بدلاً من التدفق

3:59

استعلم، استرجع، وأجب. لدينا الآن

4:02

استعلام، تخطيط، استرجاع، تقييم

4:05

فكّر، حاول مجدداً، ثم أجب. وكل واحد من

4:08

يتم التحكم في هذه الخطوات بواسطة وكيل.

4:11

ولهذا السبب توجد أطر عمل مثل لانغراف

4:13

إنها قوية لأنها تسمح لنا بـ

4:16

بناء الدورات، وليس مجرد السلاسل. لذا في

4:19

الكود الذي ستراه الآن، سننتقل

4:21

لتطبيق هذا المظهر بالضبط. سوف

4:24

قم ببناء أداة لإعادة كتابة الاستعلامات، وأداة استرجاع، و

4:27

مدقق الملاءمة وانعكاس

4:29

آلية تحدد ما إذا كان سيتم إعادة المحاولة

4:32

أو تابع. وبمجرد أن تفهم هذا

4:35

إذا ارتسمت هذه النقشة، فلن تنظر إلى قطعة القماش بنفس النظرة.

4:37

مرة أخرى، لأنك في هذه المرحلة

4:39

أنت لا تقوم ببناء روبوت محادثة، بل تقوم ببناء

4:42

وكيل استرجاع. والآن لنذهب إلى

4:45

قم بتقسيم التطبيق وابدأ البرمجة. لذلك لدي

4:48

تم إنشاء هذه البيئة الافتراضية في

4:51

والتي قمت بتثبيتها:

4:52

المكتبات. يمكنك إنشاء

4:54

قم بتثبيت ملف requirements.txt.

4:55

المكتبات. لذا لدي هذا أيضًا

4:57

ملف البيئة موجود هنا حيث احتفظت به

5:01

مفتاح API الخاص بنموذجي.

5:06

لذلك لن أريك هذا. أنت

5:08

هل يمكن استخدام أي نموذج هنا؟ في هذا

5:10

في حالتي، فأنا أستخدم مكتبة تشاترو و

5:14

أنا أستخدم لاما 3.370 مليار. فلنبدأ إذن

5:18

ابدأ البرمجة الآن.

5:29

ثم من الرسم البياني الخطي

5:34

استورد الرسم البياني حالة الرسم البياني وانتهى.

5:40

الآن من مجموعة لانغشن

5:44

لنقم باستيراد Chat Gro

5:47

من وثائق langchen core dot.

5:51

[يضحك ساخرًا] لنقم فقط بإعداد المستندات. أنا

5:53

لن يتم استيراد ملف PDF هنا. أنا

5:56

سأريك ذلك ببعض الأمثلة القليلة

6:00

المستندات التي سيتم استيعابها

6:03

إلى وكيلنا المتكامل هنا. لذلك

6:06

لقد استخدمتُ وثيقة من دورة لانجن.

6:08

لذا مرة أخرى من موجهات النقطة الأساسية لـ langen

6:13

استيراد نموذج رسالة الدردشة.

6:17

الآن من مجتمع لانجن

6:22

سنقوم باستيراد متجر متجهات نقطية

6:26

روما

6:29

من تضمينات الخط والنقطة المجتمعية.

6:35

سنستورد تضمينات وجوه متشابكة

6:39

من أدوات تقسيم النصوص من سلسلة اللغة. أوه نحن

6:43

سوف نستورد حرفًا متكررًا

6:45

أداة تقسيم النصوص، ثم لتحميلها

6:47

محتوى ملف البيئة سيقوم

6:50

من env استورد load.v. أولاً وقبل كل شيء

6:54

سأقوم بتحميل بيانات الاعتماد أو

6:57

مفتاح API الذي وضعته داخل ملفي.

7:01

والآن دعوني أعرّف نموذجي. إذن الأول

7:04

الشيء الذي سأفعله هو استخدام برنامج الدردشة

7:07

سأقوم بتحديد اسم النموذج الخاص بي. مثلي

7:09

قال: سأستخدم لاما 3.3

7:12

70 مليار

7:15

أوه، نموذج متعدد الاستخدامات. يمكنك الذهاب إلى

7:18

توثيق نمو الدردشة باللغة ثم

7:21

اطلع على جميع الطرازات المتاحة هناك.

7:25

الآن، كجزء من الوثائق، أنا

7:28

سأقوم بإنشاء بعض المستندات هنا. لذا

7:30

لأنني لا أريد أن أكتب كل شيء

7:33

لذا سأقوم بنسخها فقط

7:36

أوه، انسخ قائمة المستندات الخاصة بي من

7:38

مكان ما. لذا دعني ألصق هذا. لذا

7:42

لدي حوالي ستة مستندات.

7:46

لذا تذكر بدلاً من هذه المستندات

7:49

يمكنك ببساطة استخدام ملفاتك النصية أو ملفات PDF

7:52

الملفات أو أي نوع آخر من الملفات التي

7:55

يجب تناوله على شكل

7:58

قاعدة المعرفة الخاصة بأنظمتك.

8:03

تمام. والآن بعد أن أصبحت هذه الوثائق

8:06

حاضر،

8:08

أما خطوتي التالية فهي

8:11

تقسيم هذه المستندات من أجل...

8:16

جزء من استراتيجية تقسيم البيانات. لذا أولاً من

8:18

كل ما سأفعله هو أن يكون الفاصل يساوي I

8:21

يوجد بالفعل نص حرفي متكرر

8:23

تم استيراد مكتبة التقسيم. لذا سأذهب

8:25

لاستخدام هذا. أولاً وقبل كل شيء، أنا هنا

8:28

سأحدد حجم الجزء الخاص بي. لذا فإني

8:30

سيكون حجم القطعة 300 وهو

8:33

يعني 300 حرفًا ثم الجزء الخاص بي

8:36

تداخل

8:38

سيكون تداخل الأجزاء 50.

8:42

أعتقد الآن وثيقة جديدة

8:46

ما تراه هنا سيتجاوز الجزء

8:50

مقاس. لذا ستكون كل وثيقة من هذه الوثائق

8:53

تم وضعها كقطعة واحدة. لكنك مرة أخرى

8:56

يستطيع

8:58

استخدم ملف PDF الخاص بك في اختبار ملف PDF الخاص بك

9:00

قم بحفظ الملف كجزء من المستند، ثم

9:04

ربما فصل ملف PDF واحد إلى

9:07

أجزاء كثيرة مختلفة، والتي ستكون

9:09

أفضل للاسترجاع لاحقًا أيضًا. لذا

9:14

لقد فعلت هذا بالفعل في السابق

9:16

مقاطع فيديو. أتمنى أن تكونوا قد شاهدتم تلك الفيديوهات.

9:18

لذا في هذه الحالة، أنا أستخدم فقط

9:20

حالة مستند بسيطة هنا. تمام. الآن آه

9:24

دعني أستخدم كائن التقسيم هذا الذي

9:28

لقد أنشأت للتو ثم استخدمت

9:30

أداة تقسيم المستندات التي

9:35

لقد ذكرت ذلك هنا. إذن أيهما هو القضيب؟

9:38

المستندات. تمام.

9:41

بعد ذلك، دعني أحدد تضميني

9:43

نموذج. إذن، نموذج التضمين الخاص بي هنا هو

9:45

سوف نقوم بتضمين صور الوجوه المحتضنة.

9:49

إذن، سيكون اسم النموذج الخاص بي هو الكل /

9:55

ميني إل إم إل 6

10:01

P2.

10:03

وهذا أيضاً من وجه العناق

10:05

مكتبة. يمكنك استخدام أي شيء آخر

10:08

المكتبات التي تريدها أو أي مكتبات أخرى

10:10

النماذج التي تريدها. أوه، اذهب فقط إلى

10:14

وجه يعانق ثم يرى الفتح

10:15

نموذج المصدر موجود هناك أو يمكنك أيضًا استخدامه

10:17

نماذج تضمين الذكاء الاصطناعي المفتوح أو Gemini التي

10:20

موجودون. إذن، الخطوة التالية هي أ

10:24

متجر متجهات أو إنشاء متجه

10:26

محل. كما قلت، سنستخدم

10:28

روما، كما هو الحال في متجرنا للرسومات المتجهة. من

10:32

وثائق

10:35

سيكون المصدر هو الوثائق

10:39

وهو هذا الشيء تحديداً هنا.

10:41

ثم كجزء من عملية التضمين، سأقوم بـ

10:43

قم بتحديد كائن التضمين الخاص بي الذي قمت به للتو

10:46

تم إنشاؤه سابقًا. ثم بما أنني

10:49

أرغب في حفظ متجر المتجهات الخاص بي لاستخدامه لاحقًا

10:53

يستخدم أيضًا. لذا سأستخدم هذا

10:55

دليل الاحتفاظ

10:57

أوه، مفتاح. ثم دعني أحفظه

11:01

في موقع متجر المتجهات الخاص بي.

11:06

تمام.

11:08

بمجرد الانتهاء من ذلك، سنذهب

11:11

للكلاب المسترجعة. إذن، الكلب المسترجع يساوي

11:16

متجر المتجهات

11:18

نقطة ككلب صيد.

11:21

دعني أوضح لك

11:24

كم عدد النتائج التي نريد تحقيقها. لذا،

11:27

وسائط البحث الرئيسية

11:30

يساوي

11:32

دعني أوضح هذا في

11:38

بهذا الشكل. إذن نحن لا نسترجع

11:42

سنختار المراكز الأربعة الأولى، لكننا سنكتفي بالنتائج الثلاثة الأولى.

11:44

هنا. تمام. حتى هذه اللحظة، هذا هو

11:51

تنفيذ منظم للأساسيات

11:53

خرقة. لكن بما أننا لا نقوم بعمل راغ أساسي

11:55

سنتجه نحو دمج الوكلاء. والآن نحن

11:58

سنحدد حالة الوكيل هنا. لذلك

12:01

جزء من وكيلنا، أنا سأفعل

12:04

قم بتعريف فئة تسمى حالة الوكيل.

12:07

سيكون هذا النوع عبارة عن قاموس من النوع. والآن أنا

12:10

سأكتب كل شيء

12:15

مكونات الحالة التي سيقوم بها وكيلنا

12:17

يملك. إذن، السؤال الأول سيكون

12:19

والتي ستكون على شكل سلسلة نصية. لو

12:20

إذا كنت تريد كتابة الوصف، فأنت

12:22

بل يمكنني حتى كتابة ذلك هناك. إذن نحن

12:25

اختر السؤال المعاد صياغته لأننا

12:29

سنعيد صياغة سؤالنا أو سؤالنا

12:31

سيقوم الموظف بإعادة صياغة سؤالنا.

12:33

إذن، مسألة المنطقة هي...

12:36

جزء الاسترجاع الذي سيكون عبارة عن قائمة بـ

12:38

المستندات لأننا نبحث عن

12:40

أهم ثلاث وثائق، لذا سيأتي الأمر على شكل

12:43

قائمة

12:45

ثم لدينا

12:47

جزء التوليد بشكل أساسي والذي يعني

12:49

الجزء الخاص بعامل توليد الإجابات. ثم

12:53

بالنسبة لوكيل التحقق من الصلة، سنقوم

12:57

استخدم مدى الصلة

12:59

مكتبة ذات صلة. ولـ

13:03

عدد محاولات إعادة التشغيل لأننا لا نريد

13:06

يدخل العامل في حلقة لا نهائية، لذا

13:09

سيكون عدد المحاولات عددًا صحيحًا. لذا

13:11

هذا سيكون وكيلي

13:14

هنا. أولاً وقبل كل شيء سأقوم بـ

13:17

حدد وكيل إعادة كتابة الاستعلام الخاص بي.

13:21

لذا دعني أقوم بإنشاء دالة لهذا الغرض

13:24

إعادة كتابة الاستعلام

13:26

وكيل الدولة

13:30

وسأكتب داخل هذا

13:32

اِسْتَدْعَى. لذا سيأتي سؤالي

13:34

من قالب موجه الدردشة نقطة من

13:38

نموذج.

13:46

والآن، دعني أكتب ما يلي:

13:49

اِسْتَدْعَى. إذن أنت استفسار

13:53

تحسين

13:56

عامل.

13:59

أعد صياغة سؤال المستخدم لتحسينه

14:06

الاسترجاع من

14:10

قاعدة المعرفة

14:14

واجعلها أكثر تحديدًا

14:18

وغنية دلالياً.

14:22

والآن سؤالي سيكون سؤالي سيكون

14:27

سيأتي كمتغير سؤال. سوف

14:30

ضعها في مكان مخصص

14:34

وموجهي واضح المعالم. والآن

14:38

سأقوم بإنشاء سلسلة، وهذا يعني

14:41

أولاً وقبل كل شيء، سيتم الرد على طلبي

14:43

وبعد ذلك سيتم تسميته أو سيكون

14:45

تم إرسالها إلى برنامج الماجستير في القانون.

14:50

إذا قمت باستدعاء هذا، فإن القيمة المُعادة تساوي

14:55

سأقوم بتفعيل هذه السلسلة. سلسلة

14:57

استدعاء النقطة

14:59

أحتاج إلى طرح سؤالي هنا. لذا

15:01

السؤال سيكون الدولة

15:06

سؤال الولاية هذه الولاية بالذات

15:10

المكون هنا

15:12

وأنا لا أريد الكثير، أريد فقط

15:16

الإجابة الدقيقة التي يقدمها برنامج الماجستير في القانون

15:18

دعني أطبع

15:21

هذا الاستعلام للقراءة، لذا [يضحك ساخرًا]

15:25

دعني فقط أستخدم الشرطة المائلة وحرف النون

15:28

أقوم بإنشاء فاصل ثم أطبع

15:32

استعلام مُعاد صياغته.

15:38

دعني أشير إلى هذا أيضًا. لذا اقرأ

15:48

وما سأفعله هو أنني أيضاً

15:51

سأعيد هذه النسخة بعد إعادة كتابتها

15:55

تمت إعادة صياغة الاستعلام على النحو التالي:

15:58

تمت إعادة صياغة السؤال هنا. لذا قم بإرجاع القراءة

16:02

السؤال، ثم في القيمة التي سأذهب إليها

16:05

لتوفير

16:09

استفسار مكتوب.

16:13

عذراً، كان من المفترض أن يكون هذا هو

16:16

جزء معاد كتابته.

16:18

حسنًا، الآن وكيل إعادة كتابة الاستعلامات لدينا هو

16:21

مكتمل. والآن لننتقل إلى الاسترجاع

16:23

عامل. دعني أعرّف لك عامل الاسترجاع

16:29

إذا تم الاسترجاع. لذا سأمتنع مرة أخرى

16:32

في حالة الوكيل لهذا

16:38

الوظيفة هنا. سأفعل هنا

16:40

الاستعلام يساوي الحالة. دعني أستخرج

16:43

تمت إعادة كتابتها

16:45

السؤال الذي طرحته للتو من

16:47

هنا. ثم بعد ذلك دعني أستدعي خاصتي

16:51

كلب صيد. نقطة ريتريفر

16:56

استدعاء

16:58

استفسار.

17:02

دعني أقوم بإنشاء فاصل.

17:09

والآن لنطبع المستندات المسترجعة.

17:14

المستندات المسترجعة.

17:18

وبعد ذلك سننتقل إلى

17:21

يعود

17:23

هذا من أجل المستندات [يضحك ساخرًا]

17:26

إلى وكيل الدولة مرة أخرى.

17:29

تمام. أما الآن، فإن وكيل أعمالي الثالث هو

17:33

سيكون صانعًا للأهمية.

17:36

لذا سأقوم مرة أخرى بإنشاء

17:38

وظيفة تسمى إنشاء المستندات.

17:43

قم بتمرير حالة الوكيل هنا مرة أخرى.

17:47

إذن، سيأتي السؤال من

17:52

ولاية

17:56

سؤال.

17:58

ال

18:00

سيتم استلام طلب استرجاع المستندات

18:02

من

18:04

وثائق.

18:06

دعني أهيئ لك السياق. لذا لإنشاء

18:09

في هذا السياق، سأنضم إلى

18:11

وثائق.

18:13

لذلك دعني أستخدم الأمر dot join

18:20

a d in docs

18:23

دعني أستخرج النقطة د

18:27

صفحة

18:29

محتوى

18:34

وأخيرًا، دعوني أكتب لكم موضوعًا لـ

18:37

هذا الوكيل أيضًا، لذا سأستخدم الدردشة

18:40

نموذج المطالبات

18:42

نقطة من القالب تمامًا كما في السابق

18:48

سأحدد في هذا نطاقي

18:50

اِسْتَدْعَى

18:52

حسنًا، سيكون موضوعي هو

18:57

أنت صارم

19:00

مقيّم مدى الصلة

19:04

تحديد ما إذا كان السياق المسترجع هو

19:11

يكفي للإجابة على السؤال.

19:16

والآن سأمرر من هنا

19:18

سؤال على شكل عنصر نائب

19:22

سؤال. ثم سأمر.

19:25

السياق مرة أخرى في شكل

19:27

سياق العنصر النائب

19:30

ودعني أضيف المزيد. لذا أجب

19:33

يغادر مع

19:36

مناسب

19:40

أو ذات صلة.

19:46

تمام. والآن كما فعلنا سابقاً، سنفعل

19:49

اكتب سلسلة. أولاً وقبل كل شيء سأذهب

19:52

ل

19:54

اضغط على زر التنبيه، وبعد ذلك سأكون

19:56

سأقوم بتسليمها إلى طالب الماجستير في القانون. والآن أستطيع

19:59

استدعِ سلسلتي. لذا، استدعاء النقطة المتسلسلة

20:04

استدعاء

20:07

أحتاج إلى تمرير معلَمَين. أحدهما هو

20:10

السؤال.

20:12

إذن، سيأتي السؤال من

20:14

السؤال نفسه

20:17

ثم سيأتي السياق

20:19

من

20:21

السياق الذي قمت بإنشائه سابقاً.

20:24

هنا

20:28

لست بحاجة إلى كل شيء. أنا فقط أحتاج إلى

20:30

جزء الإجابة. لذا، محتوى النقطة

20:36

أعتقد أن هذا جيد في الوقت الحالي. لذا دعني

20:40

تحقق من النتيجة. دعني أطبعها.

20:43

أولاً، سأقوم بطباعة

20:46

فاصل. دعني أطبع

20:52

الأهمية

20:54

نتيجة.

20:56

سأقوم هنا بالطباعة

20:59

النتيجة وسأعيد هذا

21:01

النتيجة تعود إلى حالة الوكيل

21:04

في معيار الصلة.

21:10

حسنًا، الآن الجزء الخاص بتقييم مدى الصلة هو

21:14

تم إنجاز ذلك أيضاً.

21:16

الآن أحتاج أخيرًا إلى توليد الإجابات

21:18

جزء. إذن، توليد الإجابات. لذلك

21:22

سأقوم بإنشاء دالة مرة أخرى

21:24

يتم تمريرها في حالة الوكيل.

21:29

دعني أهيئ السياق

21:33

أه، باستخدام صفحات المستند هناك. لذلك

21:37

استخدمنا الأمر n dot join تمامًا كما فعلنا سابقًا.

21:40

لذا،

21:42

لذا بالنسبة لـ د في الولاية

21:48

وثائق،

21:50

كل شيء سيأتي من

21:51

الوثائق هناك.

21:54

أريد استخراج محتوى D dot P_C.

22:03

والآن ننتقل إلى الجزء المتعلق بالسؤال، دعوني أوضح...

22:06

قالب موجه الدردشة نقطة من القالب

22:14

واكتب ما أريد قوله. لذا فإن سؤالي هو

22:16

سيكون الأمر كذلك، فأنت خبير

22:20

مصمم أنظمة الذكاء الاصطناعي.

22:25

أجب عن السؤال باستخدام فقط

22:30

سياق

22:32

أقل.

22:34

لذا دعني أوضح السياق في

22:36

ضع العنصر النائب مرة أخرى، وبعد ذلك دعني

22:40

مرر السؤال

22:42

مرة أخرى كعنصر نائب.

22:48

تمام. والآن تم إنجاز هذا الجزء أيضاً. أضف

22:51

المسافة البادئة حتى لا تحصل على

22:53

مشوش.

22:55

كل هذه الأمور جزء من هذه الوظيفة هنا.

22:57

والآن، كما سبق، دعوني أنشئ...

23:00

سلسلة.

23:04

سأقوم الآن باستدعاء هذه السلسلة. لذا

23:07

استدعاء سلسلة النقاط

23:09

كما فعلنا سابقاً. علينا أن نمرر

23:11

معياران.

23:14

أحدها هو السياق. السياق سينتقل

23:16

يأتي من كائن السياق هنا.

23:20

و

23:22

السؤال

23:25

سيأتي ذلك من خلال سؤال على مستوى الولاية.

23:32

مرة أخرى، أنا أحتاج فقط إلى جزء الإجابة. لذا

23:34

دعني أكتب هذا ثم سأفعل

23:36

يمكن إرجاع المنتج

23:40

إجابة. لا، يجب أن يكون في

23:44

أعتقد أنه جيل. لنرى ماذا سيحدث

23:46

متغير بداخله. جيل جيد. لذا

23:49

دعني أضع هذا في الداخل

23:52

جزء من الجيل.

23:58

حسنًا، لقد تم الآن حضور جميع وكلائنا

24:02

تم التنفيذ بشكل صحيح. الآن نحتاج إلى

24:05

اكتب منطق لـ

24:09

إجابتنا النهائية. لذلك نقوم بإنشاء هذا

24:13

المنطق هنا حيث سيحدد الوكيل

24:16

سواء كانت الإجابة صحيحة أم لا، أو إذا

24:19

هل يجب إعادة توليدها أم لا؟

24:23

لذا

24:24

سأتحقق من هذا في الداخل

24:27

الأهمية.

24:28

إذا كانت الصلة تساوي

24:33

مناسب

24:38

ثم

24:41

يمكننا ببساطة اللجوء إلى إجابة الجيل

24:44

جيل. لذا إذا تم استخراج

24:47

المستندات، حسنًا، هذا يعني ما يلي:

24:51

إذا كانت الوثيقة المستخرجة ذات صلة

24:53

ثم ننتقل إلى توليد الإجابات. نحن

24:56

يوجد أيضًا عدد محاولات إعادة التشغيل هنا في

24:59

دولة وكيلة

25:02

أوه، من أجل تمكين أو من أجل

25:05

منع النموذج من الانتقال من أو

25:08

العملاء يدخلون في حلقة لا نهائية من

25:11

عدم الصلة ثم التجديد. لذا

25:15

دعني أتحقق من عدد محاولات إعادة الاتصال هنا أيضًا.

25:18

هذا ما تنص عليه

25:20

إعادة المحاولة

25:24

احسب إذا كان هذا أكبر من أو يساوي

25:26

أريد أن أعود مرة أخرى إلى توليد اثنين

25:33

وإلا

25:36

إذا لم يتحقق كلا الشرطين

25:39

راضٍ أو إذا كانت الإجابة غير ذات صلة

25:42

ولا يزال عدد محاولات إعادة التشغيل ضمن

25:44

إذاً، أريد إعادة كتابة الكود.

25:49

تمام. والآن ننتقل إلى متتبع إعادة المحاولة. لذلك بالنسبة لـ

25:54

متتبع إعادة المحاولة، ما الذي سأفعله؟

25:55

هو تعريف

25:58

متتبع إعادة المحاولة. سأمرر مرة أخرى

26:01

في حالة الوكيل هنا

26:04

وسيكون ذلك بسيطاً. لذا

26:07

يعود

26:10

إعادة المحاولة

26:12

عدد.

26:14

إذن، سيأتي هذا من الدولة

26:19

عدد محاولات إعادة الحالة

26:24

مهما كان عدد محاولات إعادة التشغيل. أنا فقط

26:26

سأذهب إلى هناك، وسأضيف شخصًا آخر هنا.

26:30

تمام. إذن، ما الخطأ الذي ارتكبته؟ أوه، آسف

26:32

كان ينبغي أن يكون هنا. ال

26:34

كانت المسافة البادئة غير صحيحة، ثم

26:35

كان ينبغي أن يكون هنا.

26:38

تمام. الآن تم بناء كل شيء. الآن نحن

26:41

نحتاج إلى سير عمل وكيلنا. لذا دعني

26:44

سأحدد سير عملي هنا، ولهذا السبب أنا

26:48

سأبدأ بإنشاء رسم بياني باستخدام حالة

26:50

كائن الرسم البياني الذي استخرجناه من اللغة

26:54

رسم بياني.

26:55

إذن، أعتقد أننا نمثل حالة الوكيل في الرسم البياني للحالة.

26:59

تم استيراده بشكل صحيح. لنرى.

27:03

كان من المفترض أن يكون هذا رسمًا بيانيًا للحالة.

27:06

تمام،

27:10

والآن دعوني أحدد العقد الخاصة بي. لذا، الرسم البياني النقطي

27:14

أضف العقدة، ستكون هذه عملية إعادة كتابة.

27:20

ستكون العقدة الأولى عبارة عن إعادة كتابة

27:22

الوظيفة هي إعادة كتابة الاستعلام. العقدة التالية

27:29

سيتم استرجاعها

27:32

وظيفتها هي

27:37

يسترد.

27:39

العقدة التالية ستكون الشبكة.

27:46

هذه الوظيفة هي

27:48

إنشاء المستندات.

27:50

سيتم إنشاء العقدة التالية

27:59

وظيفتها هي

28:02

يولد.

28:04

وأخيراً لدينا منطق إعادة المحاولة.

28:08

لذا ستتم إعادة محاولة العقدة

28:14

ثم الوظيفة المناسبة لـ

28:15

هذا هو متتبع إعادة المحاولة.

28:21

تمام.

28:24

والآن، بما أن كل شيء قد تم، فنحن بحاجة إلى

28:27

لتحديد نقطة دخول لهذا الرسم البياني.

28:29

سنقوم الآن ببناء سير العمل

28:31

هنا. لذا، حدد نقطة الدخول في الرسم البياني. لذا

28:35

من أين سنبدأ؟ نحن

28:37

سأبدأ بإعادة الكتابة.

28:40

باختصار، إعادة كتابة استعلام المستخدم.

28:43

ثم سأضيف الحافة من خلال إعادة الكتابة.

28:46

أضف لمسة مميزة.

28:49

لذا أضف العمر

28:51

سيكون هذا من إعادة الكتابة إلى

28:55

يسترد

28:58

من الاسترجاع في العمر.

29:04

سنقوم بالتقييم.

29:08

والآن بعد أن نلقي نظرة على وكيل التقييم الخاص بنا

29:13

لدينا الآن مسار مشروط هنا

29:16

لأننا نحتاج بعد ذلك إلى الدرجة أو درجتنا

29:20

يجب على الوكيل أن يوضح ما إذا كانت هذه الوثيقة

29:23

هل هذا الأمر ذو صلة أم لا؟ أما إذا كان الأكبر

29:25

إذا قال الوكيل إنه ذو صلة، فنحن بحاجة إلى

29:28

انتقل إلى "إنشاء" أو سنحتاج إلى الانتقال إلى

29:30

أعد كتابة النص. لذا نضيف الآن

29:33

سن مشروط هنا لأن لدينا اثنين

29:35

مسارات مختلفة. لذا نضيف

29:36

السن المشروط. لذا فإن الشرط هو

29:39

سنبدأ بالدرجة الدراسية. من

29:41

ثم نقوم بتنفيذ هذه الوظيفة.

29:44

هنا يتم تحديد ما إذا كان التقييم

29:47

جاء في الوثيقة أنه يجب المضي قدماً أو

29:51

تجديد أو إعادة. لذا

29:56

إما أن ننتقل إلى إعادة الكتابة

30:00

إذا كان الأمر يتعلق بإعادة الكتابة، فسنلجأ إلى إعادة المحاولة.

30:04

وإذا تم توليده

30:08

ثم ننتقل إلى عملية التوليد.

30:14

والآن سنضيف ميزة أخرى. لذا ارسم بيانيًا

30:16

نقطة

30:18

أضف لمسة عصرية.

30:20

إذا ذهبنا لإعادة المحاولة

30:24

حسنًا، سنختار

30:27

إعادة كتابة

30:30

وإذا كنا قد ذهبنا إلى توليد

30:35

ثم افهم بشكل أساسي أن

30:38

الإجابة المُولَّدة هي الإجابة النهائية و

30:40

ننهي الرسم البياني. الآن أخيراً يمكننا أن نفعل

30:44

التطبيق يساوي ملف الرسم البياني النقطي. إذا استطعنا

30:48

اطبع هذا. دعني أطبع هذا أيضًا

30:50

رسم بياني. لست متأكدًا مما إذا كان بإمكاننا فعل ذلك أو

30:52

ليس بعد، ولكن لنرى.

30:55

حسناً، لقد تم إنجاز كل شيء الآن. لقد قمنا فقط

30:58

يجب تقديم الاستفسار هنا. إذن، فلنبدأ

31:01

أنا أمر

31:03

استعلام نموذجي.

31:07

إذن، سيكون سؤالي هو

31:10

سأقوم فقط بتمرير الاستعلام

31:12

أه، مباشرة داخل دالة الاستدعاء الخاصة بي.

31:16

إذن سؤالي

31:19

سيكون

31:22

لماذا تفشل تطبيقات الذكاء الاصطناعي في الإنتاج؟

31:27

يفشل الذكاء الاصطناعي عندما

31:30

التعامل مع، آسف، لا يمكنني التسليم عندما

31:33

التعامل مع المستندات متعددة المجالات.

31:38

تمام. إذن هذا هو سؤالي

31:42

وسأقوم أيضاً بتحديد

31:46

عدد محاولات إعادة المحاولة إلى

31:49

عدد المحاولات صفر.

31:53

تمام. لذا مهما يكن

31:57

ستكون عملية توليد سير العمل عبارة عن

32:00

الإجابة النهائية. لذا دعني أبدأ في إنشاء

32:02

فاصل.

32:07

وأخيراً اطبع

32:10

نتيجة

32:14

جيل

32:15

نقطة.

32:18

حسناً، هذا هو الجزء الخاص بهذا الجيل.

32:22

حسناً، يبدو أن كل شيء قد تم إنجازه. نحن

32:26

بدأنا باستيراد مكتباتنا. نحن

32:29

نبدأ ثم ننتقل إلى تحديد

32:31

نموذج. ثم تناولنا بعض الطعام النيء

32:34

الوثائق هنا، والتي يمكن أن تكون أيضًا

32:36

تم استبدالها ببعض الملفات، ملفات PDF، ملفات نصية

32:39

الملفات وأي نوع آخر من الملفات التي

32:41

أردنا أن يتحمل نظام الرفوف الخاص بنا هذا الأمر.

32:44

ثم حددنا ثم ذهبنا إلى

32:46

سير عمل منظم للرفوف حيث نقوم

32:47

تم تعريف جهاز تقسيم

32:50

باستخدام نص حرفي متكرر

32:52

فاصل. ثم قمنا بتقسيم ما تم توفيره

32:54

المستندات هنا. ثم قمنا بتحويلها

32:56

في التضمينات باستخدام

33:00

باستخدام تضمينات الوجه المحتضن وهذا

33:02

نموذج محدد هنا. ثم قمنا بتخزينها

33:04

تتضمن مكتبة المتجهات الخاصة بنا أيضًا التضمينات.

33:06

بالإضافة إلى إنشاء مجلد بالداخل

33:10

هو - هي. ثم قمنا بتعريف جهاز استرجاع حيث نحن

33:13

طلبوا بشكل أساسي أفضل ثلاثة

33:15

استفسارات. ثم قطعة القماش العادية أو الأساسية

33:21

سأتوقف هنا. ما الذي انتقلنا إليه؟

33:24

تحديد حالة الوكيل لأننا أردنا

33:27

ثم أنشأنا وكيل راغ

33:31

بعض العملاء هنا. أولاً وقبل كل شيء لـ

33:34

أداة إعادة صياغة الاستعلام. لذا للاستفسار

33:36

إعادة الصياغة، لقد قمتُ أساسًا بتوفيرها

33:40

هذا التوجيه المحدد هنا لـ

33:42

أعد صياغة سؤال المستخدم، وأنا أيضًا

33:46

بدأ

33:48

إعادة محاولة المنطق إلى الصفر. باختصار عندما

33:52

تم تقديم هذا الاستفسار المحدد هنا.

33:54

تمام. إذن، كان الجزء الأول هو الاستفسار

33:56

إعادة كتابة. بمجرد ذلك السؤال المحدد

33:59

أعاد الوكيل كتابتها ثم ذهبنا

34:02

للاسترجاع حيث يعتمد على

34:04

استعلام معاد كتابته استعلام معاد كتابته

34:07

قام الوكيل بشكل أساسي باستعادة المعلومات ذات الصلة

34:09

وثائق. ثم ذهبنا للحصول على الوثائق

34:12

المُقيّم، أين هذا الوكيل تحديداً؟

34:16

تم تقييم ما إذا كانت الوثيقة المستخرجة بواسطة

34:19

الكلب المسترجع بناءً على إعادة القراءة

34:21

هل كان الاستفسار ذا صلة أم لا؟ وثم

34:25

وبناءً على ذلك قمنا بإنشاء هذا

34:27

جيل الإجابات

34:29

أه، الوكيل الذي أنشأ بشكل أساسي

34:33

الإجابة مبنية على البيانات المستخرجة

34:37

السياق أو المستندات المستخرجة ثم

34:40

السؤال الذي طرحه المستخدم هنا. الآن آه

34:43

لقد ابتكرنا هذا المنطق تحديدًا من أجل

34:45

تحقق مما إذا كان مُقيّم مدى الصلة لدينا قد

34:49

سمح لنا ذلك بتوليد الإجابة أو

34:52

طلبوا منا أن

34:55

أعد كتابة الاستعلام بشكل صحيح

34:58

سواء تم استرجاعها أم لا. ثم أنشأنا

35:00

وظيفة تتبع إعادة المحاولة هي أساسًا

35:02

احسب عدد المحاولات التي تم إجراؤها

35:04

حدث ذلك داخل سير العمل هذا. ثم نحن

35:06

أريد الانتظار حتى تكتمل عملية سير العمل. أضفنا

35:08

قم بتجميع كل هذه العوامل في عقدة واحدة. ثم نحن

35:11

حدد نقطة الدخول كاستعلامنا

35:14

وكيل إعادة الصياغة. من كاتب الاستفسارات نحن

35:17

ثم استرجع و من

35:19

ثم انتقلنا إلى عملية التقييم.

35:21

عامل. الآن من وكيل التقييم هناك

35:23

كان هناك مساران. أولاً وقبل كل شيء من

35:26

وكيل التقييم أو إذا كان وكيل التقييم

35:30

وقال إن الوثائق المستخرجة كانت

35:33

لم يكن ذلك ذا صلة، لذا ذهبنا أساسًا إلى

35:35

وكيل إعادة المحاولة أو إذا كان وكيل التقييم

35:38

وقال إن الوثائق المستخرجة

35:39

ثم تابعنا من أجل الموضوع ذي الصلة.

35:42

إنشاء وكيل. الآن إذا ذهبنا إلى

35:44

إذن، هذا يعني أن...

35:47

يجب أن يكون التدفق أو التدفق

35:51

سأعود إلى وكيل كتابة الاستفسارات مرة أخرى

35:56

وإذا اخترنا جزء التوليد

35:59

عندها سيعني ذلك أساساً نهاية

36:02

سير عملنا، وأخيراً نجحت في ذلك.

36:05

السؤال هنا ثم تمت طباعته بشكل أساسي

36:08

الجواب أخيراً. والآن يمكننا أن نركض

36:11

اتبع هذا المسار وتحقق من نوع

36:15

الإجابة التي نحصل عليها أو بشكل أساسي كيف...

36:17

سير العمل، أو كيف، أو كيف...

36:20

يتعاون الوكلاء معًا لتزويدي

36:24

إجابة مناسبة بناءً على المعلومات المقدمة

36:27

وثائق.

36:36

تمام. لذا قمت بفتح نافذة الأوامر هنا.

36:38

الآن يمكنني ببساطة كتابة python app.py

36:43

ثم قم بتشغيل هذا.

36:46

تذكر أنه يجب عليك تثبيت جميع

36:48

المكتبات كما هو موضح هنا و

36:52

باختصار، اكتب الكود بشكل صحيح

36:55

ويمكنك تشغيله على جهازك أيضًا.

36:58

فلنرى النتيجة وماذا سيحدث

36:59

هنا.

37:08

حسنًا، أولًا وقبل كل شيء، يتم عرض النماذج

37:10

تم التحميل. آه، تضمين وجه هوغينغ

37:12

نموذج

37:14

يتم تحميل الأوزان هنا. حسناً، أنا

37:17

أعتقد أنني ارتكبت خطأً ما هنا. وهكذا وجد

37:18

بدء العمر عند استرجاع العقدة غير المعروفة.

37:22

أين تم تجميع هذا الرسم البياني؟ دعني

37:25

تحقق مما إذا كنا قد ارتكبنا أي خطأ هنا

37:27

بشكل أساسي في جزء سير العمل.

37:31

إذن هناك... دعني أرى أيضاً...

37:35

الوظائف هنا. إذن هذا هو الاسترجاع

37:40

إعادة كتابة الاستعلام، استرجاع مستندات رائعة

37:43

توليد و

37:47

يقرر. تمام. لذا أعد كتابة الاستعلام واسترجاعه

37:49

عظيم

37:51

وثائق

37:53

قم بإنشاء المشروع ثم أعد المحاولة. لذلك عندما ذهبنا

37:55

ل

37:57

إعادة كتابة ذهبنا لإعادة الكتابة استرجاع

38:01

ومن الاسترجاع إلى التقييم كان هذا

38:04

صحيح.

38:06

تمام. إذن، ما الخطأ الذي ارتكبناه هنا؟

38:08

لنلقِ نظرة على السؤال مرة أخرى.

38:14

تم العثور على بدء التشغيل في وضع غير معروف لـ

38:16

يسترد.

38:19

هل حددنا نقطة البداية للاسترجاع؟

38:22

لا. لقد تحولت من إعادة كتابة إلى استرجاع،

38:30

أعد كتابة الأمر لاسترجاعه، ثم استرجعه إلى

38:35

درجة.

38:38

هيا بنا

38:39

سنراجع هذا إذا ارتكبنا أي أخطاء إملائية

38:41

هنا. إذن، عبارة "retrieve retrieve" صحيحة.

38:44

هذا استرجاع أو هذا استرجاع.

38:48

هذا استرجاع. زحف.

38:56

لست متأكدًا ما الخطأ هنا. دعني

38:58

يفحص.

39:01

حسنًا، أعتقد أن هذا كان أمرًا بسيطًا

39:03

يوجد خطأ إملائي هنا. لذا ينبغي أن يكون هذا

39:05

تم استرجاعها.

39:11

أجل، وأعتقد أنه تم تصحيحه. حسنًا

39:15

قم بتشغيل هذا وتحقق مما إذا كان لدينا أي B

39:17

أخطاء.

39:44

تمام.

39:47

أعتقد أننا ارتكبنا خطأً ما مرة أخرى

39:48

لأنه على الرغم من أنه مكتوب عليه "ذو صلة"

39:51

لكنه مع ذلك قام بإعادة كتابتها. تمام.

39:53

دعونا نتحقق مما فعلناه بشكل خاطئ. أولاً

39:56

على كل حال، دعني أذهب إلى هذا الجزء. لذلك إذا

40:00

الصلة ذات صلة،

40:05

حسنًا، لم نتحقق من العاصمة

40:07

الحرف أو الجزء الصغير منه. على أي حال،

40:09

تمام. لو كنا قد عدنا للتو

40:11

إذا كان هذا ذا صلة هنا، فسيكون الاستعلام قد

40:13

تم إيقافه وإلا لكان العميل قد فعل

40:14

توقف عند أول نقطة. على أي حال، سنفعل

40:16

انظر كيف سارت الأمور مع عميلنا.

40:20

إذن [يضحك بسخرية] كان سؤالي هو لماذا

40:23

تفشل أنظمة الذكاء الاصطناعي المستخدمة في الإنتاج عند التعامل مع

40:25

مستندات متعددة المجالات؟ فماذا فعل ذلك؟

40:27

يفعل؟ أعاد كتابة الاستعلام لتحسينه

40:29

الاسترجاع من قاعدة المعرفة. ال

40:30

يمكن إعادة صياغة السؤال ليكون أكثر

40:32

محدد ويصل دلاليًا إلى

40:35

يتبع. إذن ما هي الأساسيات؟

40:36

التحديات والقيود التي تواجه الوضع الحالي

40:37

نظام معلومات مقالات الإنتاج

40:39

وجوه عند محاولة المعالجة و

40:43

قريباً. إذن، أعاد كتابة الاستعلام. ثم

40:46

أوه، لقد ذهب الأمر لاسترجاع المستند.

40:50

لذا فقد استخرجت ثلاثة عناصر بشكل أساسي

40:52

وثائق مختلفة هنا.

40:54

وثيقة واحدة، وثيقتان، وثلاث وثائق.

40:57

المستند، لأننا حددناه.

41:00

لاستخراج أفضل ثلاث نتائج. ثم نحن

41:03

استخدمنا أداة التحقق من الصلة. كان لديه

41:06

سبق ذكره بشكل مناسب. لذلك كان ينبغي أن يكون

41:09

تم إيقافها. لكن منطقي هنا كان

41:12

خطأ. لقد قارنت بشكل أساسي بين

41:16

صغير

41:18

الشركات الصغيرة ذات الصلة هنا والتي لم تفعل

41:21

مباراة واضحة. لذا خضعت لإعادة كتابة

41:24

هنا مرة أخرى. تمام. فماذا فعل في

41:26

إعادة كتابة؟ لنرى. وهكذا في إعادة الصياغة

41:29

استعلام، أوه، لقد أعاد كتابة النص بالكامل مرة أخرى

41:32

استعلام و

41:35

وأضاف ذلك تفاصيل أكثر بكثير.

41:37

ثم عاد إلى المستند

41:39

استرجاع. وكرر المصحح ذلك.

41:42

كان الأمر ذا صلة، ولكن بسبب خطئي في

41:45

المنطق موجود، لقد أخذناه مرة أخرى إلى

41:48

إعادة كتابة جزء الاستعلام. أعاد كتابة نفسه مرة أخرى

41:51

تم استرجاع المستندات من الاستعلام.

41:53

ثم قال المصحح إنه

41:55

مناسب. الآن منذ أن أصبح لدينا عداد إعادة القلي

41:58

لقد تجاوز بالفعل الحد الأقصى لدينا

42:00

عتبة. لذا انتقلنا مباشرة إلى

42:04

قم بإنشاء جزء ثم قم بإنشاء جزء

42:06

وقد أعطاني هذا الجواب وهو

42:08

يفشل نظام الذكاء الاصطناعي للإنتاج عند التعامل مع

42:10

مع مستند متعدد النطاقات لأنهم

42:12

غالباً ما تحتوي على معلومات متداخلة حول

42:14

في مجالات متعددة مثل التمويل

42:17

والرعاية الصحية. إذن كانت هذه هي محاولتي الأخيرة

42:19

إجابة أعتقد أنها مستخرجة من

42:22

إحدى هذه الوثائق. لنرى أيهما

42:23

المستند الذي تم استخراجه منه.

42:29

أعتقد أنها كانت من هذا النوع تحديدًا

42:30

الوثيقة هنا.

42:33

هكذا تعمل وكالة مكافحة الفساد. لذلك إذا

42:37

كان نظامًا بسيطًا من الخرق حينها

42:40

كنا سنقدمها ببساطة

42:42

السؤال الذي كان سيطرحه

42:46

تم استخراج أفضل ثلاثة أو أفضل أربعة

42:49

الوثائق، ثم بناءً على ذلك

42:51

كان من الممكن أن يُولّد البرنامج إجابة.

42:54

لكننا هنا أدرجنا عدة وكلاء

42:56

للتنسيق مرة أخرى، التنسيق مع كل

42:58

تحقق من ذلك، ثم تحقق مما إذا كان المستخرج

43:01

هل الوثائق ذات صلة أم لا؟ ثم

43:04

بناءً على ذلك، قم بتزويدي بشكل أساسي بـ

43:08

الإجابة التي أنوي فعلها فعلاً. لذا

43:11

كان هذا هو تطبيق الوكيل

43:15

خرقة. أتمنى أن يكون المفهوم كذلك

43:18

التنفيذ واضح لك.

43:20

أعتذر عن الأخطاء. كان ينبغي عليّ

43:22

تم تصحيح هذا باعتباره ذا صلة أو

43:24

أساسًا

43:26

كان بإمكاني أيضًا تحويل هذا إلى

43:29

ثم قمتُ بفحصها بهذه الطريقة، حيث تم تحويلها إلى أحرف صغيرة.

43:31

بطريقة معينة. على أي حال، لقد رأينا كيف

43:34

تعمل هنا وكالة خردة. خلال الفترة الماضية

43:36

السنة، استرجاع الجيل المعزز أو

43:39

لقد غيّر برنامج Rag تمامًا كيفية عمل الذكاء الاصطناعي الحديث

43:42

تعمل الأنظمة. لكن معظم دروس الخرق على

43:45

لا يزال الإنترنت يتبع نفس النهج

43:47

مبدأ بسيط. قم بتحميل ملف PDF، وتخزينه

43:50

تضمين المستندات، واسترجاعها، وإرسالها.

43:53

كل شيء للحصول على درجة الماجستير في القانون، وإنشاء

43:56

إجابة. وبينما ينجح ذلك في العروض التوضيحية،

43:59

ليست هذه هي الطريقة التي تعمل بها أنظمة الذكاء الاصطناعي الإنتاجية

44:01

يتم بناؤها بالفعل لأنه بمجرد أن يتم بناء هذه

44:04

تدخل الأنظمة إلى العالم الحقيقي، كل شيء

44:06

يبدأ بالانكسار. عمليات الاسترجاع

44:09

سياق غير ذي صلة. تبدأ الهلوسة

44:12

الظهور. يزداد زمن الاستجابة. الوكلاء

44:14

افشل بصمت. وفجأة تجد نفسك تعمل

44:17

أصبح من المستحيل الآن على نظام الذكاء الاصطناعي

44:20

يثق.

44:21

أنظمة الذكاء الاصطناعي الحديثة للمؤسسات ليست

44:24

لم تعد مجرد خطوط استرجاع بسيطة.

44:26

إنها أصبحت ذكية، ووحداتية،

44:30

أنظمة قابلة للملاحظة وذاتية التحسين.

44:34

أنظمة قادرة على إعادة كتابة الاستعلامات،

44:37

تقييم جودة الاسترجاع، حقل إعادة المحاولة

44:39

عمليات البحث، وإعادة ترتيب المستندات، والصيانة

44:42

الذاكرة، وأداء الشاشة، و

44:44

تنسيق ديناميكي معقد

44:47

سير العمل.

44:48

وهنا يبدأ الرف الوكيل

44:51

يتطور إلى ذكاء اصطناعي جاهز للإنتاج

44:53

بنيان.

44:55

وفي هذا الفيديو، نتجاوز ذلك

44:57

دروس تعليمية أساسية. سنشرح بالتفصيل كيف

45:00

رف وكلاء حديث من الدرجة الإنتاجية

45:03

كيف يتم تصميم الأنظمة فعلياً؟

45:05

تعمل طبقات معمارية مختلفة

45:07

معًا، وما الذي يفصل بين اتجاهين

45:09

عرض توضيحي للذكاء الاصطناعي من شركة ذكاء اصطناعي قابلة للتوسع

45:13

نظام.

45:14

سنتناول خطوط أنابيب الحقن،

45:16

أنظمة الاسترجاع، تنسيق الوكلاء،

45:19

الذاكرة، والتقييم، وإمكانية الملاحظة،

45:22

بنية الوحدة، والأساس

45:24

المبدأ أو الهندسة الأساسية

45:26

المبدأ الذي تقوم عليه أنظمة الذكاء الاصطناعي الحديثة.

45:30

إذا كنت تفهم الأساسيات بالفعل

45:32

من الخرقة ويريد الارتقاء إلى مستوى الذكاء الاصطناعي الحقيقي

45:35

هندسة النظم، إذاً هذا الفيديو هو

45:37

لك.

45:39

لذا قبل أن نبدأ بتصميم الإنتاج

45:42

أنظمة التقييم، نحتاج أولاً إلى

45:44

أفهم لماذا معظم هندسة الخرق

45:46

فشل في الإنتاج

45:48

ببساطة لأن غالبية الدروس التعليمية

45:50

تحسين محركات البحث على الإنترنت لشيء واحد. الحصول على

45:54

عرض توضيحي للعمل بأسرع وقت ممكن

45:57

وهذا يخلق وضعاً خطيراً للغاية

45:59

وهم. الوهم الذي يمثله الخرقة

46:02

مجرد استرجاع بعض المستندات،

46:04

ربطها بموجه و

46:06

توليد إجابة.

46:08

لكن أنظمة الذكاء الاصطناعي في العالم الحقيقي أكثر بكثير

46:11

الأمر أكثر تعقيداً من ذلك. تخيل البناء

46:14

نظام ذكاء اصطناعي لدعم العملاء في أحد البنوك.

46:16

آلاف الوثائق الداخلية والسياسات

46:19

متغيرة باستمرار، متعددة

46:21

الأقسام، على نطاق واسع متزامن

46:23

المستخدمون، متطلبات الامتثال الصارمة،

46:25

قيود زمن الاستجابة، وضوابط الوصول،

46:27

تسجيل عمليات التدقيق. والآن فجأة أصبح الأمر بسيطًا

46:30

قاعدة بيانات متجهة بالإضافة إلى بنى LLM

46:33

يبدأ بالانهيار.

46:35

أحيانًا تكون نتائج الاسترجاع غير ذات صلة.

46:38

قطع. أحيانًا يكون الأهم

46:40

لا يتم استرجاع المستندات أبداً.

46:42

أحيانًا يكون الحاصل على درجة الماجستير في القانون واثقًا

46:44

يتوهم إجابة. وأحياناً

46:47

يفشل النظام بصمت دون أن يلاحظه أحد

46:49

حتى ملاحظة ذلك. والجزء المخيف هو

46:53

تبدو العديد من أنظمة الذكاء الاصطناعي وكأنها

46:55

العمل حتى يبدأ المستخدمون بالاعتماد على

46:58

في البيئات الحرجة.

47:01

ولهذا السبب يُستخدم الذكاء الاصطناعي في الإنتاج

47:03

الهندسة مختلفة جوهرياً

47:05

من خلال بناء عروض توضيحية للذكاء الاصطناعي. قيد الإنتاج

47:09

الأنظمة، نحن بحاجة إلى الموثوقية، نحن بحاجة

47:11

قابلية الملاحظة، نحتاج إلى التقييم، نحن

47:14

نحتاج إلى قابلية التوسع، ونحتاج إلى نمطية و

47:18

والأهم من ذلك كله، أننا نحتاج إلى أنظمة من

47:20

بإمكانهم التحسين المستمر لأنفسهم

47:23

لأن عملية الاسترجاع في الواقع هي

47:25

مشكلة بالغة الصعوبة. مستخدم

47:28

قد يكون الاستعلام غامضاً. الاسترجاع

47:31

قد تفتقر الأجزاء إلى السياق. التضمينات

47:34

قد يفشل الأمر دلاليًا أو قد يفشل المستخدم

47:37

لم يطرحوا حتى السؤال الصحيح في

47:39

المركز الأول. وهذا هو السبب بالتحديد

47:42

أصبحت أنظمة الرفوف الحديثة

47:44

تزداد فاعلية.

47:46

بدلاً من إجراء الاسترجاع مرة واحدة و

47:49

نأمل أن تسير الأمور على ما يرام، الأنظمة الحديثة

47:51

يمكن التفكير في عملية الاسترجاع

47:53

نفسها. بإمكانهم إعادة صياغة الاستعلامات،

47:56

تقييم واسترجاع المستندات، ثم إعادة المحاولة

47:59

في حالة فشل عمليات البحث، استخدم حلقات الانعكاس.

48:01

وتحديد كيفية الاسترجاع بشكل ديناميكي

48:04

ينبغي أن يحدث ذلك.

48:06

لذا لم يعد الهدف هو أننا نستطيع استعادة

48:08

سواء كانت هناك وثائق أم لا. السؤال الحقيقي الآن

48:11

كيف نبني أنظمة الذكاء الاصطناعي التي

48:14

يمكنه استعادة الحق بشكل موثوق

48:16

معلومات على نطاق واسع؟ وهذا هو المكان الذي

48:19

ورقة عمل جاهزة للإنتاج

48:22

يبدأ التصميم المعماري.

48:25

للإجابة على هذا السؤال، نحتاج إلى

48:28

لنغير تفكيرنا تماماً بعيداً عن

48:30

خطوط الأنابيب الخطية وابدأ بالتفكير في

48:32

من حيث بنية النظام.

48:35

لأن في حالة الإنتاج، فإن الخرقة هي

48:38

ولا يوجد سير عمل واحد. إنه

48:40

مجموعة من الأنظمة المترابطة

48:42

العمل معًا. على مستوى عالٍ، أ

48:45

نظام الخرق الجاهز للإنتاج عادة ما يكون

48:48

مقسمة إلى طبقات متعددة. الأول

48:51

هي طبقة الحقن. هذا هو المكان

48:54

يتم جمع البيانات الأولية وتنظيفها.

48:56

مُجزأة، مُثرية بالبيانات الوصفية و

48:59

تم تحويلها إلى تضمينات.

49:02

الطبقة الثانية هي طبقة الاسترجاع.

49:05

هنا نقوم بالبحث عبر المتجهات

49:08

قواعد البيانات، أو فهارس الكلمات الرئيسية، أو الأنظمة الهجينة

49:11

أنظمة لجلب السياق ذي الصلة.

49:14

لكن في الأنظمة الحقيقية، الاسترجاع وحده هو

49:17

غير كافٍ. لذا نقدم إعادة تصنيف

49:20

طبقة. تعمل هذه الطبقة على تحسين الطبقة الأولية

49:24

النتائج وتحسين الملاءمة باستخدام المزيد

49:26

نماذج تسجيل نقاط قوية.

49:29

وفوق ذلك لدينا الوكيل

49:31

طبقة التنسيق. هذا هو المكان

49:34

تبدأ الأمور في أن تصبح ديناميكية بدلاً من

49:36

ثابت.

49:38

بدلاً من خط أنابيب ثابت واحد، أصبحنا الآن

49:40

امتلاك أنظمة صنع القرار التي يمكنها

49:43

اختر ما ستفعله بعد ذلك. هل ينبغي لنا

49:46

هل يجب إعادة كتابة الاستعلام؟ هل يجب علينا الاستعادة؟

49:48

مرة أخرى؟ هل ينبغي لنا استخدام بحث مختلف؟

49:50

استراتيجية؟ أم ينبغي لنا المضي قدماً في

49:53

جيل؟

49:54

ثم تأتي طبقة التقييم وهذا

49:57

هذا ما يضمن أن النظام يعمل بالفعل

50:01

يعمل بشكل صحيح لأنه قيد الإنتاج

50:05

لا يكفي أن يقوم نظام الذكاء الاصطناعي بـ

50:07

يبدو صحيحاً. يجب أن يكون قابلاً للقياس،

50:10

قابلة للاختبار والتقييم المستمر.

50:14

وأخيرًا لدينا قابلية الملاحظة و

50:16

يراقب.

50:18

هنا نقوم بتتبع زمن الاستجابة،

50:20

إخفاقات، هلوسات، استرجاع

50:22

الجودة، وسلوك النظام بمرور الوقت.

50:26

وعندما تقوم بتوصيل كل هذه الطبقات

50:28

معًا، لم يعد لديكم أمر بسيط

50:30

خط أنابيب الرفوف. لديك الآن ذكاء اصطناعي معياري

50:34

نظام، نظام يمكن تحسينه

50:37

بشكل مستقل في كل مرحلة، نظام

50:40

والتي يمكن توسيع نطاقها لتشمل جميع حالات الاستخدام، و

50:44

نظام قابل للتطور حسب المتطلبات

50:46

يتغير.

50:48

وهذا هو الفرق الجوهري

50:50

بين مستوى البرنامج التعليمي و

50:53

قطعة قماش لاستقبال المواد المستخدمة في الإنتاج. في

50:56

في القسم التالي، سنقوم بتحليل

50:58

المكون الحاسم الأول لهذا

51:00

البنية، وخط أنابيب الحقن و

51:02

لماذا يلعب دورًا أكبر بكثير من

51:05

يدرك معظم الناس ذلك.

51:07

فلنبدأ بالحقنة

51:09

خط الأنابيب لأن هذا هو المكان الذي توجد فيه معظم الخرق

51:12

تنجح الأنظمة أو تفشل بهدوء قبل أن...

51:16

حتى أنه يتم طرح استفسار واحد. لذا في

51:18

إن حقن أنظمة الإنتاج ليس مجرد

51:21

حول تحميل المستندات في متجه

51:23

قواعد البيانات.

51:25

إنها هندسة بيانات منظمة

51:27

عملية.

51:29

نبدأ بمصادر البيانات الأولية. هؤلاء

51:32

يمكن أن تكون ملفات PDF أو مواقع ويب أو مواد داخلية

51:34

قواعد المعرفة، ورسائل البريد الإلكتروني، وتذاكر الدعم

51:37

أو حتى مسح المستندات ضوئياً.

51:40

لكن البيانات الخام نادراً ما تكون نظيفة أو

51:43

جاهز للاسترجاع. إذن، الخطوة الأولى

51:46

هي عملية المعالجة المسبقة.

51:49

نقوم بإزالة التشويش، وتطبيع التنسيقات،

51:51

استخراج المحتوى المنظم والتعامل معه

51:54

تناقضات بين الوثائق.

51:57

ثم تأتي مرحلة تقسيم البيانات إلى أجزاء. وهذا واحد من

52:00

أهم قرارات التصميم في

52:03

النظام بأكمله. إذا قمت بتقسيمها أيضًا

52:06

عندما تكون صغيراً، تفقد السياق. وإذا كنت

52:08

إذا كانت القطعة كبيرة جدًا، يصبح الاسترجاع غير دقيق.

52:11

وغير فعال.

52:13

لذلك غالباً ما تستخدم أنظمة الإنتاج أنظمة أكثر ذكاءً

52:16

استراتيجيات مثل التجميع الدلالي،

52:19

التقسيم الهرمي أو الأصل والفرع

52:21

تجزئة البيانات للحفاظ على المعنى أثناء

52:23

الحفاظ على كفاءة الاسترجاع.

52:26

وبعد تقسيم البيانات إلى أجزاء، نقوم بإثرائها.

52:30

وهنا يصبح تعريف البيانات الوصفية

52:32

مهم للغاية. نرفق

52:35

معلومات مثل مصدر المستند،

52:37

التسلسل الهرمي للأقسام، والطوابع الزمنية، وإمكانية الوصول

52:40

الأذونات وعلامات النطاق.

52:42

لأن السياق في الأنظمة الحقيقية ليس

52:45

أرسل رسالة نصية فقط. إنها معلومات منظمة.

52:50

ثم تأتي مرحلة التضمين.

52:52

هنا يتم تحويل كل جزء إلى

52:55

تمثيل متجهي كثيف

52:56

يلتقط المعنى الدلالي.

52:59

لكن حتى هذه الخطوة ليست بالأمر الهين في

53:02

حالة الإنتاج.

53:04

تتصرف نماذج التضمين المختلفة

53:06

يختلف ذلك باختلاف المجال،

53:08

اللغة ونوع المستند.

53:11

لذلك غالباً ما تقوم المؤسسات بتقييم خيارات متعددة

53:14

استراتيجيات التضمين بدلاً من الاعتماد

53:17

على نموذج واحد.

53:19

وأخيرًا، نقوم بتخزين كل شيء في

53:21

نظام الاسترجاع. قد يكون هذا متجهًا

53:24

قاعدة بيانات، أو محرك بحث هجين، أو

53:27

حتى طبقة بحث موزعة

53:30

حسب متطلبات المهارة.

53:33

في نهاية هذه السلسلة، لا

53:35

احتفظ فقط بالمستندات المخزنة. لدينا

53:38

نظام معرفي منظم وقابل للبحث

53:40

مصمم للاسترجاع الذكي.

53:43

وهذا أمر مهم أن نفهمه

53:46

لأنه إذا كان الحقن ضعيفًا، فلن يكون هناك أي تأثير.

53:49

من التحفيز أو إعادة الترتيب أو المنطق الفاعل

53:52

يمكن إصلاح النظام لاحقاً.

53:55

في القسم التالي، سننتقل إلى

53:57

طبقة الاسترجاع حيث نبدأ

54:00

في الواقع، استحضر هذا وفكر فيه.

54:02

معلومات وأماكن معظم أنظمة الرفوف

54:04

بدأوا في إظهار أول إنجازاتهم الرئيسية

54:06

القيود.

54:09

والآن بعد أن أصبحت بياناتنا جاهزة بشكل صحيح

54:12

بعد استيعابها وهيكلتها، ننتقل إلى

54:14

طبقة الاسترجاع حيث توجد معظم الرفوف

54:17

تبدأ الأنظمة في الشعور بأنها مثيرة للإعجاب

54:19

أو غير موثوق بها تمامًا.

54:22

للوهلة الأولى، تبدو عملية الاسترجاع بسيطة.

54:26

تأخذ استعلام المستخدم، وتحوله إلى

54:28

تضمين، ابحث عن المتجه

54:30

قاعدة البيانات، وإرجاع المفتاح الأعلى

54:32

نتائج.

54:33

لكن في أنظمة الإنتاج، هذه الخطوة هي

54:36

أحد أكثر الأجزاء عرضة للفشل

54:38

الهندسة المعمارية بأكملها

54:41

لأن التشابه الدلالي ليس

54:43

نفس معنى الصلة. قد يكون الاستفسار

54:46

استرجاع المستندات التي تم الحصول عليها في المناطق الاستوائية

54:49

متشابهة ولكنها خاطئة تماماً في السياق

54:53

أو الأسوأ من ذلك، قد يفوت ذلك الشيء الحاسم.

54:55

المستند الذي يحتوي بالفعل على

54:57

إجابة.

54:59

وهنا يأتي دور العازب التقليدي

55:01

يبدأ البحث عن متجه المرحلة في التعطل

55:03

تحت. لذا تتطور أنظمة الإنتاج

55:06

طبقة الاسترجاع في مرحلة متعددة

55:08

عملية.

55:10

المرحلة الأولى هي الاسترجاع الأولي.

55:13

هنا نقوم غالبًا بدمج عدة عناصر

55:16

استراتيجيات.

55:17

البحث عن متجه التوتر للدلالة

55:19

فهم البحث عن الكلمات الرئيسية المتناثرة

55:22

للحصول على نتائج مطابقة تمامًا.

55:24

يُعرف هذا أيضًا باسم الاسترجاع الهجين

55:26

وهو يحسن الذاكرة بشكل ملحوظ.

55:30

لكن حتى بعد البحث الهجين، ما زلنا

55:32

لم ينته الأمر بعد، لأن ما نستعيده

55:36

في هذه المرحلة، هو مجرد مرشح مبدئي

55:38

تعيين.

55:40

لذا نقدم مرحلة ثانية وهي

55:43

إعادة الترتيب.

55:44

بدلاً من الوثوق بقاعدة بيانات المتجهات

55:46

نقوم بترتيب النتائج مباشرةً، ثم نمرر عملية الاسترجاع.

55:49

الوثائق من خلال تسجيل أكثر دقة

55:51

نموذج.

55:54

يُقيّم هذا النموذج مدى الصلة بشكل أكبر

55:56

بعناية، وغالبًا باستخدام أجهزة التشفير المتقاطعة

55:58

أو نماذج تصنيف متخصصة. الهدف

56:01

الأمر بسيط هنا. خذ مرشحًا صاخبًا

56:04

قم بتحديدها وتحسينها لتصبح ذات صلة عالية

56:07

سياق.

56:09

هذا النهج ذو المرحلتين، الاسترجاع

56:11

ما يجعل إعادة الترتيب متبوعة بذلك

56:13

نظام الإنتاج أكثر بكثير

56:15

أكثر موثوقية من عروض الراغ الأساسية.

56:18

لكن حتى هذا لا يكفي في كثير من الأحيان

56:21

حالات لأن استفسارات المستخدم غالباً ما تكون

56:24

غامض، أو غير مكتمل، أو رديء الصياغة.

56:28

وهنا نبدأ في تقديم

56:30

السلوك الفاعل للاسترجاع نفسه.

56:34

لذا بدلاً من التعامل مع الاسترجاع على أنه

56:36

خطوة ثابتة، نسمح للنظام بـ

56:38

فكر في الأمر. هل ينبغي أن يكون الاستفسار

56:41

هل أعيدت كتابتها؟ هل يجب علينا استرجاعها مرة أخرى مع

56:44

تركيبة مختلفة؟ أم ينبغي لنا

56:46

توسيع نطاق البحث أم تضييقه؟ و

56:50

هنا يصبح الاسترجاع ديناميكيًا

56:52

بدلاً من أن تكون ثابتة. وبمجرد الاسترجاع

56:55

يصبح ديناميكيًا، لم نعد كذلك.

56:57

بناء خط أنابيب بسيط. نحن

56:59

بناء نظام ذكي

57:02

يشارك بنشاط في البحث

57:04

عملية.

57:06

سنتناول في القسم التالي موضوعًا آخر.

57:08

كيف تعمل سير العمل الوكيلة بالضبط في الأعلى

57:11

من طبقة الاسترجاع هذه وكيفية عملها

57:13

تحويل النظام الثابت إلى نظام ذاتي التحسين

57:16

حلقة. بمجرد أن يصبح الاسترجاع متعدد المراحل

57:20

وبعد إعادة الترتيب، التالي

57:22

يحدث تحول كبير على مستوى النظام.

57:25

نقدم هنا سير العمل الوكيل و

57:28

هنا يتوقف الرف عن التصرف كـ

57:31

خط الأنابيب ويبدأ في التصرف مثل

57:33

نظام اتخاذ القرار. في تقليد

57:35

الإعداد، التدفق ثابت. يسأل المستخدم

57:39

سؤال، يقوم النظام باسترجاع المستندات،

57:41

يُنتج برنامج LLM إجابة. لكن في

57:44

أنظمة رفوف وكلاء الإنتاج ذات الجودة العالية،

57:46

لم يعد شيء يسير بخط مستقيم تماماً.

57:49

بدلاً من ذلك، نقوم بإدخال حلقات التحكم. ال

57:52

أصبح النظام الآن قادراً على تقييم نفسه

57:54

نتيجة الاسترجاع قبل إنشاء

57:56

الرد النهائي. إذا كان السياق المسترجع

57:59

إذا كان ضعيفًا، فيمكنه تحديد المشكلة وإعادة المحاولة. لو

58:03

الاستعلام غير واضح، ويمكن إعادة صياغته.

58:06

وإذا كانت مساحة البحث ضيقة للغاية،

58:08

يمكنه توسيعه. وإذا كانت النتائج

58:12

قد يؤدي عدم الاتساق إلى حدوث

58:14

خطوة تأملية لتحسين التفكير المنطقي

58:16

قبل المضي قدماً.

58:19

هذه هي الفكرة الأساسية وراء الفاعلية

58:21

استرجاع. لم يعد النظام الآن

58:24

مجرد تنفيذ الخطوات. إنه اختيار

58:27

خطوات. أطر عمل مثل لانغراف تجعل

58:30

هذا ممكن من خلال تمثيل النظام

58:32

كرسم بياني للعقد والانتقالات

58:34

بدلاً من خط أنابيب مستقيم.

58:37

لكل عقدة مسؤولية محددة

58:40

إعادة كتابة الاستعلام، واسترجاعه، وتقييمه،

58:43

إعادة الترتيب أو التوليد.

58:46

والحواف بين هذه العقد هي

58:48

بمعنى مشروط، يقرر النظام

58:51

إلى أين نتجه بعد ذلك بناءً على المستوى المتوسط؟

58:54

نتائج. وهذا ما يُقدّم

58:57

حلقات في البنية. استرجاع

58:59

الحلقات، حلقات التقييم، حلقات إعادة المحاولة.

59:02

وهنا يبدأ الأداء

59:04

تحدث التحسينات في الأنظمة الحقيقية

59:07

لأنه بدلاً من قبول الأول

59:10

يقوم النظام باستعادة النتيجة بشكل فعال

59:12

يحسّن مدخلاته الخاصة قبل

59:15

جاري الرد.

59:17

وهذا يزيد الدقة بشكل كبير،

59:19

وخاصة في بيئات المؤسسات

59:21

حيث تكون الاستفسارات معقدة وغامضة.

59:24

لكن الأهم من ذلك، أنه يقدم

59:26

إمكانية التحكم.

59:28

لم تعد تأمل في النموذج

59:30

يتصرف بشكل صحيح في تمريرة واحدة. أنت

59:33

تصميم نظام يفرض

59:35

الصحة من خلال البنية. ومرة واحدة

59:38

نقدم هذه الحلقات الفاعلة، نحن

59:40

نحتاج أيضًا إلى تقديم شيء ما حقًا

59:42

إدارة الذاكرة والحالة أمر بالغ الأهمية.

59:46

لأنه بمجرد أن يبدأ النظام في التكرار و

59:49

عند اتخاذ القرارات، يجب أن يتذكر ما هو

59:51

لقد حاول بالفعل. لذا في التالي

59:54

سنتناول في هذا القسم كيفية عمل الذاكرة

59:56

يحوّل أنظمة الرفوف الخاصة بالوكلاء من

59:58

خطوط أنابيب عديمة الحالة إلى خطوط أنابيب مستمرة

1:00:01

أنظمة الاستخبارات. بمجرد أن

1:00:03

إدخال الحلقات، وإعادة المحاولات، واتخاذ القرار

1:00:06

إدخالها في النظام، مشكلة واحدة

1:00:08

يصبح الأمر لا مفر منه. إدارة الدولة

1:00:12

لأن الوكيل لا يستطيع التذكر

1:00:15

ما فعلته بالفعل هو في الأساس

1:00:17

أعمى.

1:00:19

في رف وكلاء من الدرجة الإنتاجية

1:00:21

في الأنظمة، لا تُعد الذاكرة مجرد ميزة.

1:00:23

إنه شرط هيكلي. بإمكاننا

1:00:26

فكّر في الذاكرة بثلاث طرق مختلفة

1:00:28

طبقات. أولها الذاكرة قصيرة المدى.

1:00:31

ويشمل ذلك السياق المباشر لـ

1:00:33

التفاعل الحالي، والاستعلام،

1:00:36

نتائج الاسترجاع الوسيطة،

1:00:38

إعادة صياغة الاستعلامات، والتقييم

1:00:40

تعليق.

1:00:42

يسمح ذلك للنظام بالحفاظ على

1:00:44

الاستمرارية ضمن منطق واحد

1:00:46

دورة.

1:00:47

أما الثاني فهو جلسة أو محادثة

1:00:50

ذاكرة.

1:00:52

هذا هو المكان الذي يتذكره النظام

1:00:54

تفاعلات المستخدم السابقة داخل

1:00:56

نفس الجلسة.

1:00:58

يساعد ذلك في الحفاظ على السياق عبر مختلف الأقسام

1:01:00

عدة دورات. لذا فإن النظام لا

1:01:03

تعامل مع كل استعلام على أنه معزول.

1:01:06

والثالث هو طويل الأمد أو دلالي

1:01:08

ذاكرة.

1:01:10

هنا تبدأ الأنظمة في التصرف

1:01:13

بل أشبه بالمساعدين الأذكياء

1:01:15

أفضل من خطوط الأنابيب عديمة الحالة.

1:01:17

بإمكانها تخزين معلومات مهمة،

1:01:19

تعرّف على تفضيلاتك أو قم بالوصول إليها بشكل متكرر

1:01:22

أنماط المعرفة للاستخدام المستقبلي. لكن

1:01:25

الذاكرة وحدها لا تكفي. نحتاج أيضًا

1:01:28

تتبع الحالة لأنه في الفاعلية

1:01:31

كل خطوة في الأنظمة مهمة. هل فعلنا

1:01:34

هل جربت بالفعل إعادة كتابة الاستعلام؟ فعل

1:01:36

هل نجحت عملية الاسترجاع أم فشلت؟ كان

1:01:39

تم تطبيق التقييم أو تم إجراؤه

1:01:42

ناجح أم راسب؟ بدون دولة منظمة،

1:01:45

تصبح هذه الأنظمة بسرعة

1:01:47

غير متوقع ويصعب تصحيح أخطائه. و

1:01:50

لهذا السبب توجد ميزات مثل أو أطر العمل

1:01:52

مثل تقنية لانغراف، فهي قوية للغاية. هم

1:01:56

اسمح لنا بتحديد الحالة بشكل صريح

1:01:58

الكائنات التي تنتقل عبر كل عقدة في

1:02:01

سير العمل.

1:02:02

بدلاً من فقدان المعلومات بين

1:02:04

نواصل هذه الخطوات في...

1:02:06

بطريقة منظمة ومضبوطة.

1:02:08

وهذا يحوّل النظام من

1:02:11

تحويل الصندوق الأسود إلى تنفيذ قابل للتتبع

1:02:14

رسم بياني. وتُعد إمكانية التتبع هذه أمرًا بالغ الأهمية.

1:02:17

في بيئات الإنتاج لأنه عندما

1:02:20

إذا حدث خطأ ما، فنحن بحاجة إلى معرفة ذلك.

1:02:22

أين ولماذا فشل بالضبط. لا

1:02:26

كانت الإجابة النهائية هي

1:02:27

غير صحيح. بمجرد أن تصبح الذاكرة والحالة

1:02:30

إذا تم تناولها أو دمجها بشكل صحيح،

1:02:33

يصبح النظام أكثر استقرارًا بشكل ملحوظ

1:02:35

وذكي.

1:02:37

لكن لا تزال هناك قطعة واحدة مفقودة. نحن

1:02:40

ما زلت لا أعرف ما إذا كان النظام

1:02:42

في الواقع، كان أداؤه جيداً. وفي

1:02:44

يبدو أن الإنتاج لا ينجح أبداً

1:02:47

كافٍ. نحن بحاجة إلى القياس، نحن بحاجة

1:02:49

التقييم، ونحن بحاجة إلى إمكانية الملاحظة،

1:02:53

وهذا بالضبط ما سنستكشفه في

1:02:55

القسم التالي.

1:02:57

وهكذا نكون قد أنشأنا نظامًا في هذه المرحلة

1:02:59

التي يمكنها استيعاب البيانات واسترجاعها

1:03:02

معلومات، وإعادة ترتيب النتائج، وحتى

1:03:05

اتخاذ القرارات من خلال حلقات فاعلة مع

1:03:07

الذاكرة والحالة. لكن لا يزال هناك

1:03:10

فجوة حرجة. ما زلنا لا نعرف ما إذا كان

1:03:13

النظام يعمل بالفعل

1:03:14

بشكل صحيح.

1:03:16

وفي بيئة الإنتاج، هذا هو

1:03:19

مشكلة خطيرة

1:03:21

لأن أنظمة الرفوف يمكن أن تبدو

1:03:23

تعمل بشكل مثالي في الاختبار ولكن بصمت

1:03:26

فشل في الواقع العملي.

1:03:29

قد يسترجع معلومات غير ذات صلة إلى حد ما

1:03:31

سياق. قد ينتج عنه جزئيا

1:03:34

إجابات خاطئة أو قد ينحرف إلى الداخل

1:03:37

الجودة تتغير مع مرور الوقت.

1:03:41

لهذا السبب التقييم والملاحظة

1:03:43

ليست مكونات اختيارية. هم

1:03:46

الطبقات المعمارية الأساسية. تقييم

1:03:49

يجيب على سؤال بسيط ولكنه قوي.

1:03:52

هل ينتج النظام بيانات صحيحة؟

1:03:54

مخرجات مؤرضة؟

1:03:55

في أنظمة رفوف الشبكة الإنتاجية، نحن

1:03:58

تقييم أبعاد متعددة.

1:04:01

نقيس مدى صلة المعلومات المسترجعة

1:04:03

السياق هو. نقيس مدى إخلاص

1:04:05

الإجابة النهائية تتعلق بهذا السياق. نحن

1:04:08

قياس ما إذا كانت الإجابة بالفعل

1:04:10

يجيب على استفسار المستخدم. وكثيرا ما

1:04:12

تتبع معدلات الهلوسة كعامل رئيسي

1:04:14

متري.

1:04:15

أطر عمل مثل Ragas أو BPAL أو Langsmith

1:04:18

يُمكّننا التقييم من أتمتة هذه العملية.

1:04:21

العملية بحيث يتم تطبيق كل تغيير فيها

1:04:23

يمكن اختبار النظام بشكل منهجي.

1:04:27

لكن التقييم وحده لا يكفي. نحن

1:04:30

كما يحتاج الأمر إلى إمكانية المراقبة

1:04:32

لأن التقييم يخبرنا بما هو

1:04:34

خطأ. تُخبرنا إمكانية الملاحظة لماذا هو كذلك

1:04:37

خطأ. وبفضل إمكانية المراقبة المناسبة، نحن

1:04:40

يمكن تتبع كل خطوة من خطوات النظام

1:04:42

تنفيذ. يمكننا رؤية الأصل

1:04:45

استفسار. يمكننا فحص الاستعلامات المعاد كتابتها.

1:04:47

يمكننا فحص واسترجاع المستندات. نحن

1:04:50

يمكن الاطلاع على نتائج إعادة الترتيب. بإمكاننا

1:04:53

انظر أي عقدة في مخطط الوكلاء قامت بـ

1:04:55

قرار. ويمكننا قياس زمن الاستجابة و

1:04:58

استخدام الرموز في كل مرحلة.

1:05:01

هذا المستوى من الوضوح هو ما يميز

1:05:04

أنظمة الذكاء الاصطناعي التجريبية، الذكاء الاصطناعي الإنتاجي

1:05:07

الأنظمة.

1:05:09

بدون ذلك، يصبح تصحيح الأخطاء مجرد تخمين.

1:05:12

بفضلها، يصبح كل فشل فرصة

1:05:14

إشارة هندسية. وهذا هو المكان الذي

1:05:16

أدوات مثل لانغميث، ولانغفيوز، و

1:05:19

أصبحت فينيكس ذات أهمية بالغة. هم

1:05:23

اسمح لنا بتحويل سير عمل ماجستير القانون إلى صندوق أسود

1:05:26

في أنظمة تنفيذ قابلة للتتبع بالكامل.

1:05:30

بمجرد أن يصبح التقييم والملاحظة في

1:05:32

المكان، لم نعد نبني

1:05:34

خطوط أنابيب تجريبية. نحن نبني

1:05:37

قابل للقياس، قابل للتصحيح، مناسب للإنتاج

1:05:39

أنظمة الذكاء الاصطناعي. والآن بعد أن أصبح لدينا كل شيء

1:05:43

بعد وضع هذه الطبقات في مكانها، تأتي الخطوة الأخيرة وهي

1:05:46

لجمع كل شيء معًا في

1:05:48

بنية معيارية قابلة للتوسع،

1:05:50

يتطور، ويتم الحفاظ عليه بواسطة حقيقي

1:05:52

فرق الهندسة، وهذا بالضبط ما

1:05:55

سنتناول الموضوع التالي.

1:05:58

والآن بعد أن تناولنا موضوع الحقن،

1:06:00

الاسترجاع، سير العمل الآلي، الذاكرة،

1:06:02

التقييم، وقابلية الملاحظة، التالي

1:06:05

السؤال هو كيف يحدث كل هذا في الواقع

1:06:08

يتحدون في نظام حقيقي يمكنه

1:06:10

حجم.

1:06:12

لأن في الإنتاج، الأكبر

1:06:15

لا يكمن التحدي في بناء واحد

1:06:17

ميزة. إنها تحافظ على نظام

1:06:20

يستمر في التطور دون أن يتعطل.

1:06:22

وهنا تكمن أهمية الهندسة المعمارية المعيارية

1:06:25

يصبح أمراً ضرورياً.

1:06:27

بدلاً من بناء واحد مترابط بإحكام

1:06:29

نظام الرفوف أو خط أنابيب الرفوف، الإنتاج

1:06:32

تُبنى الأنظمة كوحدات مستقلة

1:06:35

التي يمكن تطويرها واختبارها و

1:06:37

تمت الترقية بشكل منفصل.

1:06:40

في جوهر الأمر، عادةً ما يكون لديك أقسام منفصلة

1:06:42

مكونات للحقن والاستخراج،

1:06:45

إعادة الترتيب، والتقييم، والذاكرة، و

1:06:47

التنسيق الموسيقي.

1:06:49

ينبغي أن يكون كل مكون من هذه المكونات

1:06:50

معزولة بما يكفي بحيث يؤدي تحسينها إلى

1:06:53

لا تكسر الآخرين.

1:06:55

على سبيل المثال، يجب أن تكون قادراً على

1:06:57

قم بتغيير نموذج التضمين الخاص بك بدون

1:06:58

إعادة كتابة منطق الاسترجاع أو التبديل

1:07:02

نموذج إعادة الترتيب الخاص بك دون تغيير

1:07:04

خط أنابيب الحقن. وهذا

1:07:06

إن فصل الاهتمامات هو ما يجعل

1:07:09

أنظمة الذكاء الاصطناعي واسعة النطاق قابلة للصيانة. في

1:07:12

فرق هندسية حقيقية، كل وحدة هي

1:07:14

غالباً ما يتم التعامل معها كخدمة. له

1:07:18

تكوين خاص، واختبار خاص به

1:07:20

خط الأنابيب، وأحيانًا حتى خط الأنابيب الخاص به

1:07:23

دورة حياة النشر، وهكذا يتم تطبيق الذكاء الاصطناعي

1:07:26

تنتقل الأنظمة من مرحلة النموذج الأولي إلى

1:07:28

بنية شبكة الإنتاج. آخر

1:07:30

الجانب الرئيسي للتصميم المعياري هو

1:07:32

التنسيق الموسيقي.

1:07:34

بدلاً من تضمين المنطق بشكل ثابت في ملف واحد

1:07:36

تتيح لنا البرامج النصية والأنظمة مثل لانغراف

1:07:38

لتحديد سير العمل كرسوم بيانية صريحة.

1:07:42

تمثل كل عقدة وحدة نمطية و

1:07:44

تحدد الحواف كيفية تدفق المعلومات

1:07:46

بينهما. هذا يجعل النظام غير

1:07:49

ليس فقط معياريًا ولكن أيضًا بصريًا

1:07:51

مفهومة وقابلة للتصحيح.

1:07:54

وعندما يفشل شيء ما، لسنا بحاجة إلى

1:07:56

لتخمين مكان المشكلة. بإمكاننا

1:07:58

يمكن تتبع ذلك إلى نموذج محدد في

1:08:01

رسم بياني. وأخيرًا، الهندسة المعمارية المعيارية

1:08:04

كما يتيح قابلية التوسع

1:08:07

لأنه عندما يزداد الطلب، يمكنك

1:08:09

مصادر الاسترجاع ذات الحجم المستقل أو

1:08:12

خدمات التقييم دون توسيع نطاقها

1:08:14

النظام بأكمله. وهكذا

1:08:17

لا تُبنى أنظمة الذكاء الاصطناعي للمؤسسات على أساس

1:08:20

خط أنابيب متجانس ولكن كخط أنابيب معياري و

1:08:24

مكونات تتطور بشكل مستقل.

1:08:27

وبمجرد أن تفهم هذا الهيكل،

1:08:29

تتوقف عن التفكير في قطعة القماش كـ

1:08:31

تقنية، وتبدأ في رؤيتها على أنها

1:08:33

نظام برمجي متكامل. في النهائي

1:08:36

سنتناول في هذا الجزء من الفيديو كيفية التواصل.

1:08:38

كل شيء معًا وفهم ما هو

1:08:40

في الواقع، يقوم نظام إنتاج الخرق

1:08:42

جاهزون في العالم الحقيقي وكيف

1:08:44

يفكر فريق المؤسسة في نشر

1:08:46

هذه الأنظمة على نطاق واسع.

1:08:49

لذا فقد انهارنا عند هذه النقطة

1:08:51

كل مكون رئيسي من مكونات الإنتاج

1:08:53

نظام رفوف عامل الجودة من الحقن

1:08:56

إلى الاسترجاع من التنسيق الفاعل

1:08:58

إلى الذاكرة ومن التقييم إلى

1:09:00

إمكانية المراقبة والتصميم المعياري. الآن

1:09:04

السؤال الأخير بسيط، لكن

1:09:06

مهم. ما الذي يجعل الرفّ رفًا فعليًا؟

1:09:09

هل النظام جاهز للإنتاج؟ لأنه كذلك

1:09:12

ليس أي مكون منفرد. هذا هو السبيل

1:09:14

تعمل جميع هذه المكونات معًا تحت

1:09:17

قيود العالم الحقيقي.

1:09:19

في بيئات الإنتاج، تكون الأنظمة

1:09:22

لا يتم الحكم عليها بناءً على ما إذا كانت فعالة أم لا. هم

1:09:25

يتم الحكم عليهم بناءً على مدى موثوقيتهم،

1:09:27

قابل للتطوير، وقابل للصيانة بمرور الوقت.

1:09:30

يجب أن يكون نظام الرفوف الجاهز للإنتاج جاهزًا للإنتاج

1:09:33

التعامل مع حركة مرور حقيقية، وليس مجرد اختبار.

1:09:35

استفسارات. يجب أن يتدهور بشكل لائق عندما

1:09:38

فشل الاسترجاع، وليس تعطل النظام أو

1:09:40

تخيل نفسك في صمت.

1:09:42

يجب أن يكون قابلاً للملاحظة حتى يتمكن المهندسون من

1:09:45

فهم جميع الخيارات التي يقدمها النظام

1:09:47

صنع. يجب أن يكون قابلاً للتقييم.

1:09:51

يمكن قياس التحسينات بموضوعية

1:09:53

بدلاً من الافتراض.

1:09:55

ويجب أن يكون معياريًا بحيث

1:09:57

يمكن للمكونات الفردية أن تتطور دون

1:09:59

تدمير النظام بأكمله.

1:10:02

وهذا ما يميز التجريبي

1:10:04

عروض توضيحية للذكاء الاصطناعي من مسارات الذكاء الاصطناعي المؤسسية.

1:10:08

في العرض التوضيحي، يكفي أن يكون العرض صحيحاً. لكن في

1:10:11

الإنتاج، والاتساق هما كل شيء.

1:10:14

وفي نظام العالم الحقيقي، لا يُعتبر الفشل فشلاً.

1:10:17

نادر. هذا متوقع. لذا يجب على النظام

1:10:20

صُممت مع مراعاة احتمالية الفشل.

1:10:22

البداية. ولهذا السبب الذكاء الاصطناعي الحديث

1:10:26

تبدو الهندسة أقل شبهاً بالسرعة المطلوبة

1:10:28

الهندسة وغيرها من الأمور المشابهة للتوزيع

1:10:30

تصميم النظام. لأنك على نطاق واسع، فأنت

1:10:34

لم يعد الأمر يقتصر على العمل باللغة فقط

1:10:36

نماذج. أنت تعمل مع خطوط الأنابيب،

1:10:38

الخدمات، والرسوم البيانية، وأنظمة التقييم و

1:10:41

جميع طبقات المراقبة تعمل معًا

1:10:44

كنظام متماسك واحد. وعندما كل

1:10:47

هذا يتكامل بشكل صحيح، شيء ما

1:10:49

تحدث أمور مؤثرة. تتوقف قطعة القماش عن الوجود

1:10:53

مجرد أسلوب استرجاع. يصبح

1:10:56

بنية نظام ذكي متكامل. أ

1:10:59

نظام قادر على التعلم والتكيف والتحسين

1:11:02

ويمكن تطبيقها على نطاق واسع في حالات الاستخدام الواقعية.

1:11:05

وهذا هو التحول الحقيقي الذي يحدث في

1:11:08

الذكاء الاصطناعي الآن. ليس فقط تحسينات في التوجيهات

1:11:10

لكن أنظمة أفضل. في الفيديو التالي،

1:11:14

سنأخذ أحد أهم الأمور

1:11:16

أجزاء مفقودة من هذا التصميم المعماري

1:11:18

إعادة التقييم والتعمق في كيفية حدوث ذلك

1:11:21

يؤدي ذلك بالفعل إلى تحسين جودة الاسترجاع في

1:11:23

أنظمة إنتاج حقيقية.

1:11:26

وبهذا نصل إلى نهاية هذا الموضوع

1:11:28

فيديو. إذا وصلت إلى هنا، فأنت الآن

1:11:31

فهم شيء ما في معظم دروس الذكاء الاصطناعي

1:11:33

لا تشرح أبداً. جودة إنتاج حقيقية

1:11:36

أنظمة الخرق الوكيلية هي في الواقع

1:11:39

تم تصميمها وهيكلتها عملياً. نحن

1:11:42

بدأ الأمر من قيود الأساسيات

1:11:43

تم تركيب خطوط الأنابيب على الرفوف، ثم تم بناؤها تدريجياً.

1:11:46

بما في ذلك حقن البنية الكاملة،

1:11:49

الاسترجاع، إعادة الترتيب، سير العمل الآلي،

1:11:52

الذاكرة، والتقييم، وإمكانية الملاحظة، و

1:11:55

تصميم النظام المعياري. والمزيد

1:11:57

الأهم من ذلك، أن لديك الآن مستوى النظام

1:12:00

عقلية التفكير في الذكاء الاصطناعي

1:12:03

التطبيقات ليست كما هو مطلوب و

1:12:05

الاستجابات ولكن كأنظمة هندسية. نحن

1:12:08

تم استكشاف كيفية جاهزية الوكالة للإنتاج

1:12:11

يتم بناء أنظمة الرفوف. تحدثنا عن

1:12:13

خطوط أنابيب الحقن، وأنظمة الاسترجاع،

1:12:16

سير العمل الوكيل، والتقييم،

1:12:18

قابلية الملاحظة، والاختلاف

1:12:20

الطبقات المعمارية التي تجعل الحداثة

1:12:22

نظام الذكاء الاصطناعي موثوق به في الإنتاج. لكن

1:12:25

كان هناك عنصر واحد فقط

1:12:27

تم التطرق بإيجاز إلى أحد المكونات التي

1:12:30

غالباً ما يحدد ذلك ما إذا كان نظام الذكاء الاصطناعي الخاص بك

1:12:32

يقدم إجابة ممتازة أو

1:12:34

خيار خاطئ تماماً. وذلك المكون

1:12:36

يتم إعادة ترتيبها. لأن هذا هو

1:12:39

الواقع. معظم أنظمة الرفوف لا تتعطل

1:12:41

لأن برنامج الماجستير في القانون سيئ. إنهم يفشلون

1:12:44

لأن برنامج الماجستير في القانون يتلقى سياقاً سيئاً.

1:12:47

تخيل أن تسأل سؤالاً صحيحاً تماماً

1:12:48

سؤال. الجواب موجود في داخلك

1:12:51

قاعدة المعرفة. بل إن الكلب المسترجع يجد

1:12:53

الوثيقة الصحيحة، ولكن بدلاً من

1:12:56

بينما يصنفها في المرتبة الأولى، فإنها تحتل المرتبة السابعة.

1:12:59

لن يرى برنامج الماجستير في القانون ذلك أبدًا، والنتيجة النهائية

1:13:01

تصبح الإجابة غير مكتملة أو مضللة أو

1:13:04

خطأ تماماً. هذا واحد من

1:13:07

أكبر مشكلة خفية في عملية الاسترجاع

1:13:09

الجيل المعزز، والمثير للدهشة

1:13:12

كثير من المطورين لا يدركون حتى أنه

1:13:14

يحدث. يقضون أسابيع في التحسين

1:13:16

التوجيهات، وتغيير النماذج، والتعديلات

1:13:18

system instructions when the real issue

1:13:21

هل استرجاع البيانات أعاد القيمة الخاطئة؟

1:13:23

السياق في المقام الأول. هذا هو

1:13:26

لماذا بالضبط رفوف الإنتاج الحديثة

1:13:28

نادراً ما تعتمد الأنظمة على البحث المتجهي

1:13:30

وحيد. بدلاً من ذلك، يقدمون خياراً ثانياً

1:13:33

طبقة تسمى إعادة التقييم. طبقة

1:13:36

مصمم خصيصًا للفصل

1:13:38

الوثائق ذات الصلة من مصادر مماثلة فقط

1:13:41

وثائق. وهذا أكثر بكثير

1:13:44

الأمر أهم مما يبدو. في هذا الفيديو،

1:13:46

سنفهم لماذا البحث المتجهي وحده

1:13:49

هذا غير كافٍ. سنستكشف

1:13:51

قيود الاسترجاع الكثيف، الدلالي

1:13:54

التشابه، وأفضل عمليات البحث. سنفعل ذلك بعد ذلك

1:13:57

تعمق في كيفية عمل إعادة الترتيب

1:13:59

داخليًا، كيف تتحسن أجهزة التشفير المتقاطعة

1:14:01

جودة الاسترجاع، ومدى شعبيتها

1:14:04

حلول مثل coher rank و bg reanker

1:14:08

يُستخدم كل من Gina AI Ranker و Gina AI Ranker في الذكاء الاصطناعي الحديث

1:14:11

الأنظمة. سنقوم أيضًا ببناء نموذج عملي

1:14:14

انظر إلى مسار الاسترجاع وإعادة الترتيب

1:14:16

كيف تتناسب إعادة الترتيب مع الوكالة الأوسع

1:14:19

هندسة معمارية راغ. بنهاية هذا

1:14:22

ستفهم من خلال الفيديو أحد الأمور التالية

1:14:24

أهم التحسينات التي يمكنك إجراؤها على

1:14:27

أي نظام خرق لأن غالباً ما يكون

1:14:29

الفرق بين نظام ذكاء اصطناعي متوسط

1:14:32

والنموذج الرائع ليس هو النموذج بحد ذاته، بل هو

1:14:35

في الواقع السياق. قبل أن

1:14:37

فهم كيف تُسهم إعادة الترتيب في حل المشكلة

1:14:39

المشكلة، نحتاج أولاً إلى فهم السبب

1:14:42

غالباً ما تفشل عملية البحث عن المتجهات.

1:14:45

وقد يبدو هذا مفاجئاً في البداية

1:14:47

لأن البحث المتجهي مذهل للغاية

1:14:49

قوي. في الواقع، كان أحد

1:14:53

الاختراقات التي صنعت الرفوف الحديثة

1:14:55

الأنظمة الممكنة. يُتيح لنا ذلك البحث

1:14:58

يعتمد على المعنى وليس على المعنى الحرفي

1:15:00

الكلمات المفتاحية. بدلاً من البحث عن التطابق التام

1:15:02

مطابقة الكلمات، البحث في قواعد بيانات المتجهات

1:15:05

للسياق المتشابه دلاليًا. و

1:15:08

وهنا تكمن المشكلة الأولى بالضبط

1:15:09

يبدأ ذلك لأن التشابه الدلالي هو

1:15:12

ليس هو نفسه الملاءمة. دعني

1:15:15

يشرح. تخيل أن المستخدم يسأل ما هي

1:15:18

متطلبات الأهلية للحصول على القرض لـ

1:15:20

العملاء العاملون لحسابهم الخاص؟ متجه

1:15:23

يمكن لقاعدة البيانات استرجاع المستندات

1:15:25

فيما يتعلق بطلبات القروض والأعمال التجارية

1:15:27

التمويل، حساب فوائد القروض أو

1:15:30

التحقق من العمل الحر. جميع

1:15:33

هذه الوثائق مترابطة دلالياً

1:15:35

للاستفسار، ولكن واحد منهم فقط

1:15:38

تتضمن في الواقع معايير الأهلية

1:15:39

المتطلبات التي يبحث عنها المستخدم.

1:15:42

يقوم الكلب المسترد بما يفعله بالضبط

1:15:44

صُممت للقيام بذلك. إنها تجد

1:15:46

محتوى مشابه، لكن التشابه لا يعني بالضرورة وجود محتوى مشابه.

1:15:49

ضمان أن يكون المحتوى هو الأكثر

1:15:51

إجابة مفيدة. هذه الظاهرة غالباً ما تكون

1:15:54

يُطلق عليه اسم الانجراف الدلالي. الاسترجاع

1:15:57

يتجه تدريجياً نحو الوثائق التي

1:15:59

المواضيع ذات صلة ولكن ليس بشكل مباشر

1:16:02

مناسب.

1:16:03

ومع ازدياد حجم قواعد المعرفة، فإن هذا

1:16:06

أصبحت هذه المشكلة شائعة بشكل متزايد.

1:16:09

يتمثل التحدي الآخر في التضمين

1:16:10

القيود. عمليات التضمين رائعة،

1:16:13

لكنها لا تزال مضغوطة

1:16:15

تمثيلات اللغة. لا يستطيعون

1:16:17

التقاط كل الفروق الدقيقة بشكل مثالي، كل

1:16:19

العلاقة، وكل مجال خاص

1:16:21

التفاصيل. اختلاف بسيط في الصياغة

1:16:24

قد يؤدي ذلك أحياناً إلى نتائج مفاجئة

1:16:26

نتائج استرجاع مختلفة. هذا

1:16:28

يصبح ذلك ملحوظًا بشكل خاص في

1:16:30

مجالات متخصصة مثل الخدمات المصرفية،

1:16:32

الرعاية الصحية، أو الأنظمة القانونية، أو التقنية

1:16:34

الوثائق

1:16:36

بسبب المصطلحات الخاصة بالمجال

1:16:38

غالباً ما تحمل معنى عام

1:16:41

تواجه نماذج التضمين صعوبة في تحقيق أهدافها بالكامل

1:16:43

يفهم. ثم نواجه آخر

1:16:46

المشكلة التي تتمثل في تجزئة السياق.

1:16:48

لا يتم تخزين العديد من الإجابات بشكل منظم.

1:16:51

داخل كتلة واحدة. المعلومات

1:16:53

قد يتم توزيعها على عدة

1:16:55

أقسام من وثيقة. قطعة واحدة

1:16:58

يحتوي على المتطلبات، وآخر

1:17:00

يحتوي على استثناءات، وثالث

1:17:03

يحتوي على قيود مهمة. ال

1:17:06

قد لا يعثر كلب الصيد إلا على جزء من

1:17:09

الإجابة، مما يخلق سياقًا غير مكتمل لـ

1:17:11

ماجستير القانون. وأخيرًا، لدينا المشهور

1:17:14

المشكلة الرئيسية. عند إجراء عملية الاسترجاع،

1:17:17

نطلب عادةً أفضل خمسة، أفضل

1:17:19

10 أو أفضل 20 وثيقة. لكن كيف لنا ذلك؟

1:17:22

هل تعرف أي قيمة صحيحة؟ إذا كنا

1:17:24

إذا استرجعنا عددًا كبيرًا جدًا من المستندات، فإننا نزيد

1:17:27

الضوضاء وقد نشتت انتباه اللغة

1:17:30

نموذج. أما إذا استرجعنا عددًا قليلًا جدًا

1:17:32

قد نغفل عن وثائق مهمة.

1:17:35

معلومة. لا يوجد شيء عالمي

1:17:37

رقم مناسب لجميع حالات الاستخدام.

1:17:39

وهذا يخلق مفاضلة صعبة

1:17:42

بين الاستدعاء والدقة. لذلك عندما

1:17:44

يقول المطورون إن نظام الرفوف الخاص بي قد تم استرجاعه

1:17:47

في كثير من الأحيان، لا تكمن المشكلة في سوء السياق.

1:17:50

فشلت عملية الاسترجاع تماماً. المشكلة

1:17:52

إن عملية الاسترجاع أنتجت مجموعة من

1:17:55

وثائق المرشح التي تحتوي على كليهما

1:17:58

نتائج جيدة ونتائج سيئة. وهذا مفتاح

1:18:01

بصيرة. وظيفة كلب الصيد ليست

1:18:03

ليس بالضرورة إيجاد إجابة مثالية.

1:18:06

تتمثل مهمتها في إيجاد مجموعة من المحتملين

1:18:08

المرشحون المناسبون.

1:18:10

يكمن التحدي الحقيقي في تحديد أيهما

1:18:13

من بين تلك الوثائق أو المرشحين يستحقون

1:18:15

للوصول إلى درجة الماجستير في القانون. وهذا بالضبط

1:18:18

وهنا يأتي دور إعادة الترتيب.

1:18:22

الآن وقد فهمنا القيود

1:18:24

فيما يتعلق بالبحث المتجهي، دعونا نلقي نظرة على كيفية

1:18:26

أنظمة الإنتاج الحديثة تحل هذه المشكلة

1:18:28

المشكلة والحل مفاجئان

1:18:30

رائع. بدلاً من سؤال الكلب المسترجع

1:18:33

للعثور على المستندات المثالية، نسمح

1:18:35

لكي نركز على شيء أسهل بكثير،

1:18:38

إيجاد مجموعة واسعة من المحتمل

1:18:40

المرشحون المناسبون.

1:18:42

ثم نقدم مرحلة ثانية

1:18:46

المسؤولية الوحيدة هي تصنيف هؤلاء.

1:18:48

تحديد المرشحين بدقة أكبر. هذا يعطي

1:18:50

ما يُعرف بالاسترجاع على مرحلتين

1:18:52

خط الأنابيب. في نظام الرفوف التقليدي،

1:18:55

تبدو آلية العمل كالتالي.

1:18:57

يقوم المستخدم بإرسال استعلام. كلب الصيد

1:19:00

يبحث في قاعدة بيانات المتجهات. ال

1:19:01

يتم إرسال المستندات المسترجعة مباشرة إلى

1:19:04

ماجستير القانون وأي سياق آخر يحدث فيه

1:19:06

يصبح استرجاعها أساسًا لـ

1:19:08

الإجابة النهائية. لكن في الإنتاج

1:19:11

في النظام، يوجد عادةً نظام إضافي

1:19:13

خطوة في المنتصف. يصبح سير العمل

1:19:15

استعلام، استرجاع، مستندات مرشحة،

1:19:18

ريانكر، أفضل الوثائق، وبرنامج الماجستير في القانون. في

1:19:22

للوهلة الأولى، قد يبدو هذا صغيراً

1:19:24

تغيير معماري، لكنه يمتلك

1:19:27

تأثير هائل على جودة الاسترجاع.

1:19:30

لأن كل مكون الآن لديه

1:19:32

مسؤولية متخصصة. ال

1:19:34

يركز كلب الصيد على الاستجابة للأوامر. مهمتها هي

1:19:36

للعثور على أكبر عدد ممكن من العناصر ذات الصلة المحتملة

1:19:39

أكبر قدر ممكن من الوثائق. لا نتوقع

1:19:41

لترتيب كل شيء بشكل مثالي. نحن

1:19:43

أردت فقط تجنب تفويت الأمور المهمة

1:19:46

معلومة. ثم يركز المحلل على

1:19:49

دقة. وتتمثل مهمتها في فحص تلك

1:19:52

وثائق المرشح بعناية أكبر و

1:19:54

حدد أيها الأكثر أهمية

1:19:57

ذات صلة بسؤال المستخدم. ال

1:19:59

فصل المسؤوليات هو

1:20:02

مهم للغاية لأن الاسترجاع

1:20:04

والتصنيف مختلفان بشكل جوهري

1:20:06

مشاكل. يتعلق الأمر بالعثور على

1:20:09

مرشحين. أما الأمر الآخر فيتعلق بالاختيار.

1:20:11

الفائزون.

1:20:13

إحدى الطرق المفيدة للتفكير في الأمر هي كالتالي.

1:20:16

ألقى كلب الصيد شبكة واسعة. ال

1:20:18

يختار ريانكر أفضل الأسماك. بدون

1:20:21

إعادة التصنيف، غالباً ما يتلقى LM

1:20:24

مزيج من المعلومات ذات الصلة العالية

1:20:26

وكذلك الضوضاء. مع إعادة الترتيب،

1:20:29

يصبح السياق أوضح وأكثر تركيزاً.

1:20:31

وأكثر فائدة بشكل ملحوظ. وذلك

1:20:34

ويترجم ذلك مباشرة إلى إجابات أفضل.

1:20:37

جودة استرجاع أفضل، أقل

1:20:39

معدلات الهلوسة، ومؤشر أكثر موثوقية

1:20:41

نظام الرفوف بشكل عام. لكن هذا يثير تساؤلاً

1:20:44

سؤال بديهي. كيف يقوم عامل إعادة التدوير

1:20:47

تحديد المستندات التي

1:20:49

الأكثر صلة؟ ما الذي يجعله أكثر ذكاءً؟

1:20:52

أكثر من كلب الصيد؟ وللإجابة على ذلك،

1:20:54

نحتاج إلى النظر في آليات

1:20:56

كيف تتم عملية إعادة الترتيب.

1:20:59

إذن، كيف يعمل جهاز إعادة التصنيف فعلياً؟ لماذا

1:21:02

هل هو قادر في كثير من الأحيان على تحقيق نتائج أفضل؟

1:21:04

قرارات الملاءمة أكثر من كونها متجهًا

1:21:05

قاعدة بيانات؟ لفهم هذا، نحتاج إلى

1:21:08

قارن بين كيفية استرجاع البيانات وإعادة ترتيبها

1:21:10

معالجة المعلومات. عندما يكون كلب الصيد

1:21:13

عند تلقي الاستعلام، يقوم أولاً بتحويل

1:21:15

الاستعلام في متجه تضمين. كل

1:21:17

يحتوي جزء المستند في قاعدة البيانات على

1:21:19

تم تحويلها بالفعل إلى ملكيتها الخاصة

1:21:21

متجه التضمين. ثم الكلب المسترد

1:21:24

يقارن هذه المتجهات باستخدام التشابه

1:21:26

مصفوفة مثل تشابه جيب التمام. ال

1:21:29

المستندات التي تكون متجهاتها الأقرب إلى

1:21:31

يتم تصنيف متجه الاستعلام في مرتبة أعلى. هذا

1:21:34

العملية سريعة للغاية، ولهذا السبب

1:21:37

يمكن البحث في قواعد بيانات المتجهات

1:21:39

ملايين الوثائق في أجزاء من الثانية.

1:21:41

لكن هناك ثمن يجب دفعه. كلب الصيد

1:21:44

لا يقرأ الاستفسار والوثيقة بشكل كامل

1:21:47

معاً. إنها تقارن فقط بينهما

1:21:49

تمثيل متجه مضغوط. و

1:21:52

على الرغم من أن هذا يعمل بشكل جيد للغاية، إلا أنه قد

1:21:54

تفويت العلاقات الدقيقة التي

1:21:57

مهم من أجل الملاءمة. هذا هو المكان

1:21:59

إعادة التصنيف تأخذ منحى مختلفاً تماماً

1:22:01

يقترب. بدلاً من مقارنة المتجهات،

1:22:04

يقوم المُحلل بفحص الاستعلام مباشرةً

1:22:06

وكل وثيقة مرشح على حدة.

1:22:09

لنفترض أن المستخدم يسأل ما هي

1:22:12

شروط الأهلية للحصول على القرض لـ

1:22:14

المستقلون وبعد الاسترجاع نحن

1:22:17

الحصول على أربع وثائق ترشيح.

1:22:19

تتحدث الوثيقة (أ) عن القروض العامة

1:22:21

السياسات. يحتوي المستند ب على معلومات عن العاملين المستقلين

1:22:24

معايير الأهلية. الوثيقة ج

1:22:27

يشرح حسابات سعر الفائدة و

1:22:29

تحدد الوثيقة د التطبيق

1:22:32

إجراءات. قد يصنف كلب الصيد

1:22:35

هذه الوثائق تستند فقط إلى الدلالات

1:22:38

تشابه. لكن برنامج إعادة الترتيب يأخذ كل واحد

1:22:40

وثيقة ويطلب تركيزًا أكبر

1:22:43

سؤال. بالنظر إلى هذا الاستفسار المحدد، كيف

1:22:46

هل الوثيقة المحددة ذات صلة؟ هو - هي

1:22:49

يقوم بتقييم زوج الاستعلام والمستند

1:22:51

مباشرة. ونتيجة لذلك، قد يتم تعيين

1:22:54

درجات لكل من هذه الوثائق. لذا

1:22:57

لاحظ ما حدث هنا. المُعيد

1:22:59

لقد أعاد ترتيب النتائج بشكل فعال.

1:23:02

الوثيقة التي تجيب فعلياً على

1:23:05

يتصدر هذا السؤال قائمة الأسئلة الأكثر تقييماً.

1:23:08

أما الوثائق الأقل فائدة فتنتقل الآن

1:23:11

تحت. ولهذا السبب فإن إعادة الترتيب

1:23:14

غالباً ما يكون أحد أعلى التأثيرات

1:23:15

التحسينات التي يمكنك إجراؤها على الرف

1:23:18

نظام. لا يتطلب الأمر تغييرك

1:23:20

قاعدة بيانات المتجهات. لا يتطلب ذلك

1:23:22

إعادة تدريب تضميناتك و

1:23:24

لا يتطلب الأمر استبدال شهادة الماجستير في القانون. هو - هي

1:23:27

ببساطة، يُحسّن جودة

1:23:29

السياق قبل وصوله إلى النموذج. ل

1:23:31

بالطبع، تأتي الدقة المتزايدة

1:23:33

بتكلفة. على عكس الاسترجاع،

1:23:35

إعادة الترتيب مكلفة حسابيًا.

1:23:39

يجب على النموذج تقييم كل استعلام

1:23:41

كل زوج من المستندات على حدة، مما يعني

1:23:43

لا يمكنه في الواقع تسجيل ملايين النقاط

1:23:45

من الوثائق، وهذا هو السبب تحديداً الذي يجعلك

1:23:48

لماذا نستخدمه بعد الاسترجاع بدلاً من ذلك

1:23:51

بدلاً من الاسترجاع. كلب الصيد

1:23:54

يؤدي ذلك إلى تضييق نطاق البحث بسرعة. ال

1:23:56

ثم يقوم ريانكر بتحليل دقيق

1:23:58

مجموعة مرشحين أصغر. بعبارة أخرى،

1:24:01

الكلب المسترجع سريع بينما الكلب المعاد ترتيبه

1:24:04

هو ذكي، ويشكلان معًا أحد...

1:24:07

الاسترجاع الأكثر فعالية

1:24:09

البنى المستخدمة في الرفوف الحديثة

1:24:11

الأنظمة. لكن ما نوع النماذج التي

1:24:13

هل كان يُستخدم فعلاً لإجراء عملية إعادة الترتيب هذه؟

1:24:15

تقودنا الإجابة إلى أحد أهم

1:24:18

المفاهيم المهمة في عملية الاسترجاع

1:24:19

الأنظمة التي هي عبارة عن مشفرات متقاطعة.

1:24:22

لفهم المشفرات المتقاطعة، نحتاج إلى

1:24:25

لنستعرض بإيجاز كيف تعتمد معظم تقنيات التضمين على

1:24:27

نظام الاسترجاع يعمل. في نموذج نموذجي

1:24:31

نستخدم في إعداد البحث ما يسمى بـ

1:24:33

بنية التشفير الثنائي.

1:24:36

في بنية benccoder، الاستعلام

1:24:38

ويتم معالجة المستند

1:24:40

بشكل منفصل. يتم تحويل الاستعلام إلى

1:24:43

تضمين. كل جزء من المستند هو

1:24:45

كما تم تحويلها بشكل مستقل إلى

1:24:48

تضمين خاص. ثم نقارن هذه

1:24:50

تضمينات باستخدام دالة التشابه.

1:24:53

هذا الفصل هو ما يجعل عملية الاسترجاع

1:24:55

سريع للغاية وقابل للتوسع لأن كل

1:24:58

يمكن حساب تضمينات المستندات مسبقًا و

1:25:00

مخزنة مسبقاً. لكن هذا نفسه

1:25:02

الانفصال هو أيضاً مصدرها

1:25:05

هذا القيد ناتج عن عدم وجود النموذج مطلقًا

1:25:08

يرى الاستعلام والمستند بالفعل

1:25:10

معاً. إنها تقارن فقط بينهما

1:25:12

تمثيل تجريدي. مشفر متقاطع

1:25:15

يعمل بشكل مختلف تماماً. بدلاً من

1:25:17

معالجة الاستعلام والمستند

1:25:19

بشكل منفصل، يقوم بمعالجتها معًا

1:25:21

كمدخل واحد مدمج. على سبيل المثال،

1:25:24

يتلقى النموذج شيئًا كهذا.

1:25:26

استعلام بالإضافة إلى المستند أ، ثم استعلام بالإضافة إلى

1:25:29

المستند ب، ثم الاستعلام بالإضافة إلى المستند ج،

1:25:31

وهكذا دواليك. يتم تقييم كل زوج

1:25:34

بشكل مشترك من قبل النموذج. وهذا يسمح بـ

1:25:37

نموذج لأداء دلالات أعمق بكثير

1:25:39

التفكير المنطقي. يمكنها أن تفهم ليس فقط

1:25:41

ما إذا كانت الوثيقة مشابهة لـ

1:25:43

السؤال، ولكن هل يجيب عليه فعلاً؟

1:25:46

الاستعلام، ولهذا السبب تُستخدم المشفرات المتقاطعة

1:25:48

تُعد بشكل ملحوظ

1:25:50

أكثر دقة للحصول على نتائج ذات صلة. هم

1:25:52

إنهم يقومون أساسًا بأداء دقيق للحبوب

1:25:54

مقارنة بدلاً من دورة تدريبية

1:25:56

البحث عن التشابه.

1:25:59

لكن هذه الدقة لها ثمن.

1:26:01

التشفير Crossen حسابيا

1:26:04

مكلف لأنه لا يمكنك افتراض ذلك

1:26:06

تضمين المستندات مسبقًا. كل

1:26:09

يجب معالجة زوج مستند الاستعلام في

1:26:12

وقت التشغيل مما يجعلها غير مناسبة لـ

1:26:15

الاسترجاع الأولي على نطاق واسع وهذا

1:26:17

هي الفكرة المعمارية الأساسية. بواسطة

1:26:20

تُستخدم أجهزة التشفير للاسترجاع و

1:26:22

تُستخدم المشفرات المتقاطعة لإعادة الترتيب

1:26:25

ويشكلون معاً قوةً هائلة

1:26:28

نظام ثنائي المراحل يوازن بين السرعة و

1:26:30

دقة. والآن بعد أن فهمنا

1:26:33

النموذج الأساسي وراء إعادة التصنيف،

1:26:36

الخطوة التالية هي النظر في كيفية حدوث ذلك

1:26:38

تم تطبيقها في أنظمة العالم الحقيقي و

1:26:40

والأهم من ذلك، ما هي الأدوات و

1:26:43

تُستخدم الخدمات فعليًا في الإنتاج

1:26:45

لجعل هذا الأمر ناجحاً على نطاق واسع.

1:26:48

الآن وقد فهمنا النظرية الكامنة وراء

1:26:50

المشفرات المتقاطعة وسبب نجاح إعادة الترتيب،

1:26:52

السؤال التالي عملي للغاية. كيف

1:26:55

هل نستخدم هذا بالفعل في الواقع؟

1:26:57

نظام الإنتاج؟ لأن في الواقع

1:26:59

تطبيقات الإنتاج، فرق قليلة جداً

1:27:02

تدريب نماذج إعادة الترتيب الخاصة بهم من

1:27:04

يخدش. بدلاً من ذلك، يعتمدون على الأمثلية

1:27:07

خدمات ونماذج إعادة التصنيف الجاهزة

1:27:09

يمكن توصيله مباشرة بـ

1:27:11

مسار الاسترجاع. سنلقي نظرة على

1:27:14

الخيارات الأكثر استخدامًا في

1:27:16

الإنتاج اليوم. أحد أكثر

1:27:18

الحلول الشائعة هي ترتيب متماسك. إنه

1:27:22

واجهة برمجة تطبيقات مستضافة تأخذ استعلامًا وقائمة

1:27:24

من المستندات ويعيد نفس الشيء

1:27:26

الوثائق مرتبة حسب الصلة. إنها

1:27:29

يستخدم على نطاق واسع لأنه بسيط وسريع.

1:27:31

ودقيقة للغاية للأغراض العامة

1:27:34

حالات الاستخدام. خيار قوي آخر هو

1:27:36

عائلة بي جي إي ريانكر. هذه هي

1:27:40

نماذج مفتوحة المصدر يمكن تشغيلها

1:27:42

محليًا أو تم نشره في نظامك الخاص

1:27:43

بنية تحتية. غالباً ما يفضلونها

1:27:46

في البيئات التي تكون فيها خصوصية البيانات

1:27:48

أمر بالغ الأهمية أو حيث ترغب الشركات في الحصول على كامل

1:27:51

التحكم في مكدسهم. ثم لدينا

1:27:54

جينا الذكاء الاصطناعي يسحب.

1:27:56

هذه قوية بشكل خاص لـ

1:27:58

مهمة استرجاع متعددة اللغات و

1:28:00

أصبحت تحظى بشعبية متزايدة على الصعيد العالمي

1:28:02

التطبيقات. جميع هذه الأدوات تتبع

1:28:05

نفس المبدأ الأساسي. هم

1:28:07

خذ استعلامًا ومجموعة مرشحة من

1:28:09

المستندات، ثم يعيدون ترتيبها

1:28:11

قائمة مبنية على الصلة. وهذا يجعلهم

1:28:14

سهل الدمج للغاية

1:28:16

تطبيقات الخرق الحالية. والآن لنبدأ

1:28:19

انظر كيف يعمل خط الإنتاج

1:28:21

يتغير ذلك فعليًا عند إعادة الترتيب

1:28:23

قدَّم. بدلاً من التمرير المباشر

1:28:26

نقوم باستخراج المستندات إلى برنامج الماجستير في القانون، ثم نقوم بإدخالها.

1:28:28

مرحلة الفرز والتصنيف في

1:28:30

بين. ثم يصبح التدفق خاصًا بالمستخدم

1:28:33

أداة استرجاع الاستعلامات التي يمكن أن تكون إما

1:28:36

البحث المتجهي أو البحث الهجين. أعلى K

1:28:38

وثائق المرشحين، أداة إعادة الترتيب

1:28:41

نموذج التشفير المتقاطع أو نموذج واجهة برمجة التطبيقات، الطرف العلوي

1:28:44

وثيقة منقحة، ثم ماجستير القانون لـ

1:28:47

توليد الاستجابة النهائية. في معظم

1:28:49

نظام الإنتاج، K هو عن قصد

1:28:52

يتم الحفاظ على مستويات عالية غالبًا ما تتراوح بين 20 و 50

1:28:54

مرشحين. ثم ينخفض ​​مستوى إعادة التدوير

1:28:57

هذا يتقلص إلى حجم أصغر بكثير وأكثر

1:28:59

مجموعة دقيقة تتكون عادةً من 3 إلى 10 مستندات.

1:29:02

هذا يحسن الجودة بشكل كبير

1:29:04

من السياق الذي تم تمريره إلى نموذج اللغة

1:29:07

ونتيجة لذلك، تصبح المخرجات النهائية

1:29:09

أكثر دقة، وأكثر رسوخاً، وأكثر استقراراً. الآن

1:29:12

أننا نفهم أدوات الإنتاج

1:29:14

ومكان إعادة التصنيف في مسار العمل،

1:29:17

الخطوة التالية هي التنفيذ الفعلي

1:29:19

هو - هي. والآن سننتقل من النظرية إلى

1:29:22

التنفيذ وبناء بسيط ولكن

1:29:24

خط أنابيب إعادة التقييم بأسلوب الإنتاج. نحن

1:29:27

سيتم استخدام سلسلة اللغات للتنسيق.

1:29:29

قاعدة بيانات الألوان للاسترجاع

1:29:32

ودردشة مع لاما 3.3 70 مليار

1:29:37

نموذج لتوليد الاستجابة النهائية. ال

1:29:40

الفكرة هنا ليست بناء نموذج تجريبي للعبة، ولكن

1:29:42

لمحاكاة كيفية عمل خطوط أنابيب الخرق الحقيقية

1:29:45

مُهيكلة في نظام الإنتاج. و

1:29:47

نبدأ أولاً بطبقة الاسترجاع.

1:29:49

نقوم بتحميل قاعدة بيانات المتجهات الخاصة بنا وننفذ

1:29:51

بحث أولي عن التشابه للحصول على

1:29:54

مجموعة أكبر من وثائق المرشحين. هذا

1:29:56

الخطوة سخية عن قصد. نحن

1:29:59

لا أسعى للحصول على نتائج مثالية

1:30:01

هنا. نحن نحاول فقط الحصول على

1:30:03

تغطية. لذلك نقوم عادةً باسترجاع

1:30:07

شيء مثل أفضل 20 أو أفضل 30

1:30:09

وثائق. لكن في حالة عملية...

1:30:11

قد لا يكون ذلك مناسباً. إذن سنفعل

1:30:15

نحافظ على أعلى قيمة معينة وفقًا لسياساتنا

1:30:18

تطبيق. ثم نقدم لكم

1:30:20

طبقة إعادة الترتيب. لذا في الإنتاج

1:30:23

النظام، هذا هو المكان الذي كنا سنفعل فيه عادةً

1:30:25

استدعاء نموذج التشفير المتقاطع أو نموذج مُستضاف

1:30:28

إعادة ترتيب واجهات برمجة التطبيقات مثل coher bz أو gina.

1:30:31

لكن بالنسبة لتنفيذنا، فسوف

1:30:33

محاكاة نفس السلوك عن طريق تسجيل النقاط

1:30:35

استعلام عن أزواج المستندات باستخدام نموذج LLM

1:30:37

دالة الصلة. وهذا يسمح لنا بـ

1:30:39

شرح المفهوم بوضوح دون

1:30:41

إدخال تبعيات خارجية. و

1:30:43

بمجرد حصولنا على وثائق المرشح، سنقوم بـ

1:30:46

قم بتمرير كل مستند مع الاستعلام

1:30:48

إلى دالة تسجيل النقاط. كل زوج هو

1:30:50

تم تقييم مدى ملاءمتها. ثم نقوم بالفرز

1:30:53

الوثائق بناءً على درجاتها. و

1:30:55

وأخيرًا، نختار الأفضل والأكثر

1:30:58

الوثائق ذات الصلة وتسليمها إلى

1:31:00

ماجستير في القانون. وهنا يكمن نموذجنا في برنامج الماجستير في القانون

1:31:04

يدخل. يأخذ عملية الاحتيال المتقنة

1:31:06

السياق ويولد الأساس النهائي

1:31:09

إجابة. والآن لنقم بتنفيذ هذا

1:31:11

خطوة بخطوة باستخدام لانجين. والآن لنبدأ

1:31:14

انظر إلى جزء التنفيذ. ونحن سوف

1:31:17

أبدأ بإعداد أساسي للغاية حيث

1:31:19

يجب أن تتوفر هذه المتطلبات التالية في

1:31:22

ملف requirements.txt. لدي هذا أيضًا

1:31:26

ملف PDF للمعرفة والذي سيعمل

1:31:29

كقاعدة معرفية لي. هذا

1:31:30

ملف PDF معين عبارة عن ملاحظة بايثون قمتُ بها

1:31:33

أعددتها بنفسي. إذن هذا سيكون أنا

1:31:37

قاعدة معرفية خاصة بفنّاني في فنّ السحب. ثم أنا

1:31:40

لدي أيضًا ملف ENB هذا حيث لدي

1:31:43

قمت بتخزين مفتاح واجهة برمجة تطبيقات LLM الخاص بي بالإضافة إلى

1:31:46

أستحوذ على مفتاح واجهة برمجة تطبيقات Face API الذي سأقوم به

1:31:48

يُستخدم للتضمين. والآن لنبدأ

1:31:51

فيما يتعلق بجزء الاستيراد. دعوني أولاً

1:31:53

استيراد مُحمّلات المستندات من langen

1:31:57

مجتمع.

1:31:59

لذا سأقوم بتحميل برنامج تحميل ملفات PDF من باي.

1:32:04

أوه، على نحو مماثل من

1:32:07

فواصل نص لانجن

1:32:11

دعني أستورد نصًا حرفيًا متكررًا

1:32:13

فاصل. وبالمثل من لانجن

1:32:17

أعتقد أن هذا متجر كوميونيتي دوت فيكتور.

1:32:20

موجود بالفعل مكرر. أعتقد أننا نستطيع

1:32:22

بالفعل أو مباشرة قم بعمل لون طويل

1:32:25

الآن، ولكن في الوقت الحالي أعتقد أنه يمكننا استخدام هذا

1:32:29

استيراد روما.

1:32:32

تمام. ومن langchain_hugging

1:32:36

وجه. لا أعتقد أن هذا مثبت.

1:32:39

لذا دعني أقوم بتثبيت pip install بسرعة

1:32:43

سلسلة

1:32:46

وجه يعانق

1:32:50

وسأضيف نفس الشيء في

1:32:54

وثيقة المتطلبات.

1:32:56

دعني أنسخ هذا ثم ألصقه في

1:32:59

المتطلبات أيضاً.

1:33:02

ارجع إلى الكود.

1:33:04

الآن بمجرد أن يصبح وجه لانجن المعانق

1:33:07

تم التثبيت. لذا يمكنني استخدام langen_hogging

1:33:10

وجه. سأستخدم وجهًا متسلطًا

1:33:12

التضمينات.

1:33:13

ومن langen_gr

1:33:16

سأستخدم مجموعة الدردشة. هذا سوف

1:33:18

يُستخدم لتحميل نموذجنا. من لانجن

1:33:22

نقاط التوجيه الأساسية.

1:33:25

دعني أستورد نموذج رسالة الدردشة.

1:33:30

عذراً، استيراد

1:33:33

قالب برنامج الدردشة ومن لانجن

1:33:38

لانغ تشين

1:33:40

برامج تحليل مخرجات النقاط الضعيفة تسمح لي بالاستيراد

1:33:45

وأخيرًا دعني أستخدم محلل مخرجات السلسلة النصية.

1:33:49

استورد os أيضًا من env

1:33:55

استيراد تحميل البيئة.

1:33:58

والآن بعد اكتمال جميع عمليات الاستيراد،

1:34:01

لنقم بتحميل بيانات الاعتماد باستخدام هذا

1:34:03

الوظيفة هنا. ثم نُعرّف برنامج ماجستير القانون

1:34:06

وهذا ما سيكون عليه إجراء الدردشة لدينا

1:34:08

نموذج. إذن، هذا هو اسم الطراز.

1:34:12

إذن سيكون النموذج هو أو النموذج

1:34:14

سيكون الاسم لاما 3.370

1:34:20

مليار

1:34:21

نموذج متعدد الاستخدامات. لذلك لن أترشح

1:34:24

هذا على جهازي الخاص، لكنني سأفعل ذلك.

1:34:27

لاستخدام هذا كخدمة سحابية لـ

1:34:29

والذي أحتفظ فيه بمفتاح API الخاص بي

1:34:31

ملف البيئة. تمام. على أي حال، لنبدأ

1:34:34

قم أيضاً بتحديد نموذج التضمين. لذا

1:34:37

ستأتي التضمينات من

1:34:39

سأقوم أيضاً بالتضمينات، وبالمثل سأفعل

1:34:42

أدخل اسم النموذج. إذن اسمي النموذجي

1:34:44

سيصدر الحكم

1:34:49

محولات

1:34:54

الجميع

1:34:55

نحن بحاجة إلى LM

1:34:58

L6

1:35:00

الإصدار الثاني. تمام.

1:35:03

لقد قمنا الآن بتحميل وحدة التحكم الرئيسية لدينا أيضًا.

1:35:07

كنموذج تضمين. والآن ماذا؟

1:35:09

ما سنفعله هو أننا سنفعل

1:35:10

حدد مسار ملف PDF الخاص بنا. لذا، لا أحد من أجل

1:35:14

في هذا المشروع، يوجد مسار ملف PDF بالداخل

1:35:15

مجلد البيانات ولدي نقطة المعرفة

1:35:19

ملف PDF. وبالمثل، دعني أستخدم أداة تحميل.

1:35:24

كائن من برنامج تحميل ملفات PDF من نوع pi إلى أساسًا

1:35:28

قم بتحميل ملف PDF الخاص بي من مسار ملف PDF هذا.

1:35:34

وبعد ذلك سنستخدم أداة التحميل

1:35:38

الكائن لتحميل النص فعليًا من

1:35:41

ملف PDF.

1:35:43

حسنًا، يمكنني ببساطة طباعة عدد الصفحات

1:35:46

هنا، لكن أعتقد أن الأمر على ما يرام في الوقت الحالي. ثم

1:35:48

سنختار تقسيم النص. نص

1:35:51

الانقسام.

1:35:53

يمكننا استخدام أداة تقسيم النص المساوي لـ "سوف".

1:35:56

استخدم نص الأحرف المتكرر

1:35:58

فئة التقسيم. هنا يجب عليّ أن أقدم

1:36:00

معياران مختلفان. الأول هو

1:36:02

حجم القطعة.

1:36:04

لنفترض أن حجم الجزء هو 500

1:36:08

ثم سنحدد تداخل الأجزاء

1:36:12

أن يكون طوله حوالي 100 حرف. حسنًا، سنفعل

1:36:17

سنقوم ببساطة بكتابة نص حرفي هنا.

1:36:20

الآن، نحن مهتمون بالرقم

1:36:23

من القطع هنا. وهكذا خُلِقَ

1:36:29

أوه لين

1:36:32

أجزاء ستعطينا عدد

1:36:33

قطع.

1:36:37

أجل، سأضطر أيضاً إلى استخدام ذلك

1:36:39

كائن فاصل النص نقطة لأن هذا هو

1:36:43

ملف PDF الخاص بي. لذا سأحتاج إلى استخدام...

1:36:46

قم بتقسيم المستندات ثم قم بتوفيرها

1:36:48

كائن المستند الذي أحصل عليه من هنا.

1:36:52

لذا،

1:36:54

بعد أن قمت بتقسيمها إلى أجزاء،

1:36:58

ثم قمت بطباعة عدد الأجزاء

1:37:01

التي تم إنشاؤها.

1:37:04

الآن، ما نحتاج إلى فعله هو، حسنًا، لنبدأ

1:37:07

إنشاء مخزن متجهات. لذلك أنا

1:37:10

سأقدم مسارًا مرة أخرى. لنتصل

1:37:12

مسار الكروما.

1:37:16

مسار الكروما يساوي، أين أذهب؟

1:37:19

أعطيه؟ حسنًا، لنقم بعمل رجل متقاطع خلفي

1:37:23

قاعدة البيانات

1:37:25

حسنًا، نتحقق مما إذا كان هذا المسار موجودًا أم لا.

1:37:29

ليس كذلك، أو إذا كان هذا أو إذا كان المجلد

1:37:31

وجود مسار الكروما أو عدم وجوده، وإذا كان موجودًا

1:37:36

هذا غير موجود، سنفعل

1:37:38

إنشاء مخزن متجهات. لذا مخزن المتجهات

1:37:41

مخزن المتجهات يساوي سنستخدم

1:37:43

فئة Chroma dot من المستندات

1:37:50

وسنحتاج داخل هذا إلى توفير

1:37:53

المستندات أولاً، وهي الأجزاء التي

1:37:56

سيتم تخزينها ثم سأمررها إلى

1:37:58

التضمين

1:38:02

التضمينات التي قمت بإنشائها

1:38:05

أو نموذج التضمين الذي لدي

1:38:07

كما هو موضح هنا، وأخيراً سأفعل هذا.

1:38:10

دليل الشراء بحيث بمجرد أن يصبح

1:38:13

تم إنشاء الدليل، ويبقى هناك

1:38:17

أو يبقى مخزن المتجهات هناك، وهو

1:38:21

لا يتم تحميل أو إنشاء هذا

1:38:25

قم بتخزين المتجهات مرة أخرى للثانية أو الثالثة أو

1:38:27

الجولة الرابعة. حسناً، إذا كان هذا موجوداً بالفعل

1:38:31

المسار، ثم أحتاج ببساطة إلى تحميل ملفي

1:38:34

متجر المتجهات. لذا لتحميل المتجه

1:38:35

يمكنني تخزين البيانات في متجه يساوي

1:38:41

قم بتحميل هذا ببساطة باستخدام chroma

1:38:44

دليل. إذن، هذا سيكون أنا

1:38:46

مسار الكروما. والمعيار الثاني

1:38:49

ما سأحتاجه هنا هو التضمين

1:38:52

وظيفة.

1:38:54

ستكون دالة التضمين

1:38:55

التضمينات.

1:38:59

تمام. والآن بعد أن فعلنا هذا، فلنذهب

1:39:02

وصولاً إلى جزء كلب الاسترداد. لذا، كلب الصيد

1:39:06

يساوي تخزين المتجه كنقطة كمسترجع.

1:39:11

سأذكر عدد المعلمات

1:39:14

أو كم عدد المستندات التي نحتاجها هنا.

1:39:17

لذا سيتم تعريفها على أنها

1:39:20

ابحث عن حجج الكلمات الرئيسية وسأذهب

1:39:22

على سبيل المثال لا الحصر

1:39:24

كم عدد النتائج الرئيسية التي سأحتاجها؟ لذا

1:39:26

سأضع قيمة K مساوية لـ...

1:39:29

لنقم بعشرة الآن، ثم سنفعل

1:39:32

رتبها وفقًا لذلك

1:39:34

بناءً على عدد الأجزاء التي

1:39:36

مخلوق.

1:39:39

حسنًا، بمجرد الانتهاء من هذا أيضًا، دعنا

1:39:43

حدد جزء الاسترجاع الأولي لدينا. لذا

1:39:46

سنقوم بتعريف دالة لهذا الغرض. لذا

1:39:49

دالة استرجاع المستندات. لنمرر

1:39:51

الاستعلام، ثم سيكون الاستعلام

1:39:55

على شكل سلاسل نصية. لذا سنعود

1:39:58

كلب الصيد

1:40:00

لا تحصل على المستندات ذات الصلة.

1:40:04

يحصل

1:40:07

الوثائق ذات الصلة، وداخلها أنا

1:40:09

سأقوم بتمرير استفساري. بناءً على ذلك

1:40:11

الاستعلام، سيقوم برنامج الاسترجاع بـ

1:40:14

باختصار، أريد أفضل 10 نتائج

1:40:18

من الأجزاء التي تم إنشاؤها. الآن يأتي الآن

1:40:22

الجزء الرئيسي الذي نستهدفه

1:40:25

في هذا الفيديو الذي يظهر فيه ريانكر. لذا

1:40:28

بالنسبة لـ reanker، ما سنفعله هنا

1:40:30

سنستخدم شهادة الماجستير في القانون كـ

1:40:34

ثم يتم استخدام دالة تسجيل النقاط الخاصة بـ reanker بناءً على

1:40:37

سنقوم بتصفية مخرجاته

1:40:39

قد تؤدي هذه النتائج العشرة الأولى إلى أعلى النتائج

1:40:42

ثلاثة أو من بين أفضل خمسة نتائج. لذلك

1:40:45

نحتاج أولاً إلى كتابة موجه لإعادة الترتيب.

1:40:48

لذا لكتابة إعادة التقييم

1:40:51

سأستخدم موجه الدردشة

1:40:52

نقطة القالب من القالب.

1:40:56

الآن، أحتاج إلى تقديم معلوماتي داخل هذا القسم.

1:40:59

اِسْتَدْعَى.

1:41:01

لذا سيكون سؤالي هو: أنت...

1:41:05

حازم

1:41:06

مقيّم مدى الصلة

1:41:10

بافتراض وجود استعلام ومستند.

1:41:17

حدد مدى الصلة

1:41:19

النتيجة من 0 إلى 1.

1:41:25

أعد النتيجة فقط.

1:41:29

سأقوم هنا بتمرير الاستعلام

1:41:31

كما ناقشنا سابقاً في النظرية

1:41:33

جزء. سنمرر زوجًا من

1:41:35

الاستعلام بالإضافة إلى المستندات التي لدينا

1:41:38

لدينا، ثم سنتحقق من

1:41:40

مدى ملاءمة الاستعلام وكل وثيقة.

1:41:44

إذن، المستند هنا هو المستند الفعلي.

1:41:52

إذن، سيكون هذا هو موضوعي.

1:41:55

والآن دعوني أشرح لكم سلسلة إعادة الترتيب.

1:41:59

سلسلة إعادة التصنيف. إذن، سلسلة إعادة الترتيب تسير

1:42:02

سيتم أولاً عرض مطالبة بإعادة الترتيب.

1:42:07

إعادة كتابة الموجه. بعد ذلك سننتقل إلى

1:42:09

مررها إلى llm وبعد ذلك سنقوم

1:42:11

سأقوم بتمريرها إلى محلل مخرجات السلسلة النصية.

1:42:16

تمام. إذن، ستكون هذه سلسلتي.

1:42:19

الآن بما أنني مضطر لإعادة الترتيب أو...

1:42:25

يجب الحصول على درجة إعادة الترتيب لجميع

1:42:26

هذه الوثائق العشر واحدة تلو الأخرى. لذا سأفعل

1:42:30

حسنًا، لنُعرّف دالة حيث سنقوم

1:42:33

سنفعل ذلك بشكل متكرر. بالتأكيد

1:42:40

إعادة ترتيب المستندات، المعلمات هي

1:42:43

سيكون الاستعلام والتوثيق نفسه.

1:42:46

لذا دعني أنشئ قائمة لحفظ

1:42:50

تم إنشاء النتائج. لذا سأقوم بتشغيل

1:42:53

قم بالتكرار هنا. لذا بالنسبة للمستند في المستندات

1:42:58

وهذا يعني

1:43:00

كل وثيقة من تلك الوثائق من تلك الوثائق العليا

1:43:03

سيتم إدخال النتيجة رقم 10 في هذا

1:43:06

قم بالتكرار هنا. لذا سأذهب لتقييم النص

1:43:10

يساوي reank_chain

1:43:13

dot invoke.

1:43:15

بعد هذا، اسمحوا لي أن أتطرق إلى بعض الأمور.

1:43:18

حدود. الأول هو الاستعلام

1:43:20

التي أحتاج إلى المرور بها من الداخل

1:43:22

ملاحظة خاصة هنا. إذن سؤالي هو

1:43:25

سيكون السؤال نفسه، ثم...

1:43:28

المستندات، آسف، يجب أن تكون وثيقة

1:43:32

تمامًا كما هو موضح في هذا العنصر النائب هنا. لذا

1:43:34

سأقوم داخل هذا بتنفيذ الصفحة_ج

1:43:38

محتوى.

1:43:40

حسنًا، بمجرد الانتهاء من هذا أيضًا، سنقوم

1:43:43

حاول الحصول على أعلى الدرجات، ولأننا

1:43:48

استخدمنا محلل إخراج strr، لذلك سننتقل

1:43:51

للحصول على هذا كسلسلة نصية هنا. وماذا في ذلك؟

1:43:53

كل ما علينا فعله هو أن نحاول وسنفعل

1:43:57

حاول تحويل هذه النتيجة التي نحصل عليها في

1:43:59

تحويل السلسلة النصية إلى عدد عشري. لذا دعونا نفعل ذلك

1:44:02

شريط النقاط النصية للنتيجة. إن كان لدينا أي

1:44:06

المسافات، هذا الشريط المنقط سيزيلها جميعًا

1:44:09

من تلك المساحات المحيطة بها أو إذا كانت

1:44:12

لا يمكن إنشاء قيمة عددية عشرية لـ

1:44:15

أنني سأخصص الدرجة على النحو التالي

1:44:17

0.0 هذه حالة استثنائية و

1:44:20

أخيرًا، ما سأفعله هو أنني

1:44:21

سيتم الإلحاق

1:44:24

هذا لتقييم المستندات

1:44:27

ونحصل على أول نتيجة لنا. ثم مرة أخرى

1:44:30

نقوم بمراجعة الوثيقة. لذا من

1:44:33

10 وثائق، درجة الوثيقة الأولى هي

1:44:35

تلقى. ثم ننتقل مرة أخرى إلى الثانية

1:44:37

وثيقة. نقوم بتمرير الاستعلام. نمر

1:44:39

في محتوى صفحة المستند الثاني. نحن

1:44:41

نُنشئ النتيجة ثم نتصل مرة أخرى

1:44:46

حسنًا، سنضيف ذلك مرة أخرى إلى النتيجة.

1:44:48

المستندات، ثم تستمر هذه الحلقة حتى

1:44:51

إلى أن ننتهي من ذلك

1:44:53

جميع الوثائق العشرة الأولى التي لدينا

1:44:56

تلقى. تمام. تمام. الآن بمجرد أن يصبح هذا

1:44:59

انتهى الأمر، فلنخرج من حلقة التكرار و

1:45:01

ثم سنقوم بفرز وثائق درجاتنا

1:45:05

هنا. فلنحل هذه المشكلة.

1:45:09

حسناً، على أي أساس نرتب هذا الأمر؟ لذا

1:45:12

سنكتب هذا يساوي لامدا

1:45:16

x1

1:45:19

do reverse equals to true.

1:45:24

حسناً، هناك خطأ واحد هنا. لنستبدل

1:45:27

هذا يساوي α بحيث يكون هذا α

1:45:31

تم إنجاز جزء الفرز أيضاً. ثم سنفعل

1:45:33

وثائق رمز الإرجاع.

1:45:37

وثائق تسجيل النقاط. تمام. الآن وقد أصبحنا

1:45:40

تم الانتهاء من إعادة ترتيب المستندات، الآن

1:45:44

لنبدأ في توليد الإجابات.

1:45:47

لذا، لنكتب لتوليد الإجابات:

1:45:49

التوجيه النهائي.

1:45:52

السؤال الأخير مرة أخرى سيكون

1:45:54

تم إنشاؤه باستخدام قالب دردشة prom

1:45:57

نموذج.

1:45:59

دعني أكتب السؤال هنا. لذا

1:46:03

أنت مساعد ذكاء اصطناعي مفيد.

1:46:09

أجب فقط من خلال

1:46:13

مساعد الذكاء الاصطناعي.

1:46:18

تمام. أجب فقط من خلال

1:46:22

السياق المقدم.

1:46:24

إذا لم تكن الإجابة

1:46:28

في السياق، قل لا أفعل

1:46:33

يعرف.

1:46:36

لذا سأقدم السياق. سيكون هذا

1:46:39

سيتم ذلك على شكل

1:46:42

عنصر نائب كسياق. وبعد ذلك سأفعل

1:46:44

اطرح سؤالاً.

1:46:46

سيُطرح هذا على شكل سؤال.

1:46:51

والآن دعوني أستحضر سلسلة أخيرة

1:46:54

لإنشاء الإجابات. لذا هذا النهائي

1:46:56

ستحتوي السلسلة على موجه نهائي.

1:47:00

ثم سنحصل على ماجستير في القانون

1:47:05

وبعد ذلك سنحصل على ستر

1:47:07

محلل المخرجات.

1:47:10

تمام.

1:47:12

والآن أخيرًا يمكننا المضي قدمًا، ثم...

1:47:18

قم بإنشاء الإجابة باستخدام هذا الأمر

1:47:22

وظيفة. لذا سنبدأ أولاً بتعريف هذا

1:47:23

دالة توليد الإجابة. لذا لهذا السبب

1:47:26

ما سأفعله، ما الذي سنفعله

1:47:28

ما عليّ فعله هو أن يكون لديّ استفساري أيضًا.

1:47:30

تأكد من ترتيب أهم مستنداتي بشكل صحيح.

1:47:34

من هنا. إذن هنا داخل هذه الدالة

1:47:38

ما سأفعله هو أنني سأفعل

1:47:41

تجميع كل السياق في واحد

1:47:44

وتر واحد. لذا، للقيام بذلك أضف اثنين

1:47:48

الشرطات المائلة العكسية، النقطة، الانضمام

1:47:52

وثم

1:47:54

أضف أضف

1:48:00

أهم محتوى صفحة "افعلها" لـ "افعلها"

1:48:07

أفضل الأطباء

1:48:11

ثم العودة

1:48:14

السلسلة النهائية

1:48:15

dot invoke.

1:48:17

لذا في جزء الاستدعاء، أحتاج أساسًا إلى

1:48:19

قم بتوفير معيارين. أحدهما هو

1:48:21

سياق. لذا، سأقوم بتوضيح السياق.

1:48:24

قدّم السياق الذي ذكرته للتو

1:48:27

تم إنشاؤها هناك ثم الثانية

1:48:29

الجزء الذي يجب أن أتجاوزه في السؤال.

1:48:33

سأمرر السؤال في الاستعلام.

1:48:38

تمام. وبمجرد الانتهاء من هذا أيضاً، سنفعل ما يلي:

1:48:42

سنحدد هنا مسار معالجة البيانات بالكامل.

1:48:45

تذكر مرة أخرى أن هذه قطعة قماش أساسية مع

1:48:47

إعادة تدوير فقط، ويمكنك التحويل

1:48:51

هذا إلى خرقة فاعلة

1:48:54

كما تحدثنا سابقاً في

1:48:58

مقاطع الفيديو السابقة. لذا دعونا نحدد هذا

1:49:02

diff divore

1:49:05

اكتب سطرًا.

1:49:08

سأمرر الاستفسار.

1:49:11

الآن سيأتي الاستعلام بالشكل التالي

1:49:13

من الأعداد الصحيحة، ثم سأقدم لك الأعلى

1:49:16

قيمة المفتاح. القيمة الرئيسية الافتراضية

1:49:18

سيكون العدد خمسة.

1:49:22

تمام. إذن، الخطوة الأولى هي الحصول على كلب الاسترداد. لذا

1:49:26

للقيام بذلك، سأقوم باستعادة المستندات

1:49:29

يساوي سأسمي

1:49:31

كلب الصيد

1:49:32

دالة استرجاع المستندات ثم تمريرها

1:49:35

الاستفسار. بمجرد الانتهاء من ذلك، الخطوة الثانية

1:49:38

الخطوة هي جزء إعادة الترتيب. لذلك بالنسبة لـ

1:49:41

إعادة الترتيب: يمكنني ببساطة تقييم المستندات على قدم المساواة

1:49:43

يمكنني أن أسمي عملية إعادة الترتيب

1:49:46

ثم يتم تمرير المستندات إلى الوظيفة.

1:49:49

الاستعلام، وهو يقبل ببساطة

1:49:53

المستندات هنا. لذا سأمتنع عن المشاركة

1:49:55

يمكنك استرجاع المستندات من هنا. إذن ما هذا؟

1:49:58

ما سأفعله هو أن هذا سيولدني

1:50:02

قم بإنشاء زوج من المستندات لي أيضًا

1:50:04

كدرجات. والآن ما سأفعله

1:50:06

سأقوم بتحديد مفتاحي الرئيسي

1:50:09

نتائج. لذا أفضل قمة k أعلى

1:50:13

ستكون المستندات على رأس قائمة لـ

1:50:21

قمة

1:50:24

درجة الفاصلة

1:50:27

في

1:50:29

أقيّم المستندات، ثم أريد فقط الأفضل.

1:50:34

مفتاح

1:50:36

القيم هنا. لا أحتاج إلى أي شيء آخر.

1:50:41

ثم تتمثل الخطوة التالية في توليد

1:50:43

إجابات. لذا يمكنني ببساطة أن أفعل ذلك.

1:50:48

الإجابة تساوي توليد الإجابة

1:50:50

وظيفة. سأقوم بتمرير الاستعلام و

1:50:53

ثم القمة

1:50:55

المستندات هنا. وأخيراً، دعوني أعود

1:51:00

أجب بالإضافة إلى وثائق Scorecore.

1:51:04

إذن، ما سيساعدني هذا هو

1:51:07

إن كان لديّ سؤال متعدد الفنون أصلاً الآن

1:51:11

لن يعتمد الأمر على شيء واحد فقط

1:51:14

السياق الذي يتطابق فقط مع

1:51:19

يتوافق مع دلالات الاستعلام

1:51:21

لكنها تتحقق الآن أيضاً من مدى الصلة بالموضوع

1:51:25

باستخدام آلية التسجيل هذه هنا. لذا

1:51:28

حتى الأسئلة متعددة الفنون يمكن أن تكون

1:51:30

تمت الإجابة هنا. والآن لنختبر

1:51:32

هذا سؤال من جزء واحد.

1:51:35

لننتقل إلى قاعدة المعرفة. انتقل إلى

1:51:37

أي موضوع بين هنا وذاك سنفعل

1:51:40

اسأل، سنسأل، ما هذه؟

1:51:43

تمام. لذا، سأسأل خردتي

1:51:48

وحدة حول أنواع البيانات الأولية في

1:51:50

بايثون، ثم سنرى أي نوع من

1:51:52

الإجابة التي يقدمها. ارجع إلى رينشر.

1:51:55

إذن، الاستعلام هو

1:51:59

أدرجني في القائمة

1:52:02

أنواع البيانات الأولية في بايثون.

1:52:07

بمجرد الانتهاء من ذلك، يمكنني الاتصال برفّي

1:52:10

خطوط الأنابيب.

1:52:12

تُعادل إجابة ترتيب المحادثات الاتصال بـ

1:52:15

قم بتثبيت خط الأنابيب وقم بتمرير الاستعلام.

1:52:19

والآن لنطبع

1:52:22

الإجابة النهائية هنا، وكذلك دعونا أيضاً

1:52:25

اطبع الجزء العلوي

1:52:29

وثائق

1:52:36

أفضل الأطباء. أوه، آسف، دعنا أيضاً

1:52:40

اطبع المستندات المصنفة هنا

1:52:45

وببساطة، سأحتاج فقط إلى خمسة مصنفين

1:52:48

المستندات.

1:52:51

دعني أحول هذا إلى سلسلة نصية حتى...

1:52:54

يصبح كل شيء أسهل في الملاحظة.

1:52:57

إذن، هذا سيكون خيطي. لنضف

1:53:02

فاصل الأسطر n / n حتى لا نحصل على

1:53:06

أنا في حيرة من أمري بشأن ما يحدث. تمام. لذلك نحن

1:53:08

جاهزون لتشغيل هذا. فلنبدأ بالجري

1:53:10

برنامج إعادة ترتيب الملفات rag.py باستخدام لغة بايثون. إن كان لدينا أي

1:53:14

إذا حدث خطأ، فسنقوم بتصحيح هذا الخطأ.

1:53:22

إذا لم يكن ينبغي أن يكون هناك أي خطأ، ولكن

1:53:24

لنرى.

1:53:32

لقد واجهنا خطأً حيث يظهر رمز باي (π).

1:53:35

برنامج PDF غير مثبت. فلنفعل

1:53:38

قم بتثبيت pipdf

1:53:40

نقطة.

1:53:45

هذه المكتبة مطلوبة لـ pipdf

1:53:47

أداة التحميل التي استخدمناها هناك. فلندع

1:53:51

سأقوم بتثبيت هذا. قم بتنظيف هذا ثم

1:53:54

أعد تشغيله.

1:54:00

لا يتم ذلك عبر ملفات PDF على موقع reanker.

1:54:30

حسنًا، ما زال لدينا بعض التهجئة

1:54:32

هناك أخطاء هنا. لذا، أعتقد أنه ينبغي ذلك

1:54:35

كانت هناك تداخلات في الأجزاء، لكنني أعتقد أنني

1:54:37

ارتكبت خطأً. لذا، كان ينبغي أن يكون هذا

1:54:40

تداخل الأجزاء.

1:54:44

دعني أوضح هذا الأمر مرة أخرى، ثم

1:54:47

أعد تشغيل مرساة شبكة السحب الخاصة بي.

1:55:16

تمام. كما ترون، تم تقسيمها إلى 72 قطعة.

1:55:19

مخلوقين، وهذا يعني أننا في البداية مجرد

1:55:22

أحاول استعادة العشرة أجزاء. نحن

1:55:25

لا يزال هناك بعض الأخطاء. فلنرى

1:55:26

لا يمكن الوصول إلى استرجاع المتغير المحلي

1:55:28

المستندات. إذن أين يكمن هذا الخطأ تحديداً؟

1:55:32

في خط أنابيب الرف ثم استرجاع do

1:55:34

رقم السطر 110.

1:55:36

فلنلقِ نظرة على هذا.

1:55:39

رقم السطر 110.

1:55:42

إذن، استرجاع المستندات ليس دالة.

1:55:44

لنرى.

1:55:49

نعم، إنها دالة.

1:55:54

إذن، استرجاع المستندات هو دالة. حسنًا

1:55:57

احتفظ بهذا الاسم باسم آخر. لذا،

1:56:00

استرجاع المستند.

1:56:04

احتفظ بهذا كوثيقة للرحلة، ثم

1:56:06

احتفظ بهذا كمستندات استرجاع. دعني أتأكد

1:56:08

أعد تحديد المسافة البادئة إذا لزم الأمر.

1:56:10

هل يوجد أي خطأ هنا؟ لا، ليس هناك شيء

1:56:12

هذا خطأ. لذا يمكنني المضي قدماً و

1:56:15

ثم قم بتشغيل هذا

1:56:17

أوه، احصل على الجزء ذي الصلة.

1:56:22

أعتقد أن هناك خطأً آخر رأيته هنا

1:56:25

أضع شرطة سفلية قبل هذا مباشرة.

1:56:28

لذا كان ينبغي أن يصبح هذا الأمر ذا صلة

1:56:30

وثائق.

1:56:33

يحصل

1:56:37

الوثائق ذات الصلة. حسناً، أعتقد أن

1:56:40

كانت الإجابة السابقة صحيحة.

1:56:43

احفظ هذا الملف ثم أعد تشغيله.

1:56:48

إذن، تم إنشاء مخزن المتجهات بالفعل.

1:56:50

لذا فإن هذه العملية لن تسير

1:56:53

كرر ذلك لأننا أبقيناه في إذا

1:56:56

الجزء الآخر.

1:57:17

احصل على المستندات ذات الصلة التي ينقصها مستند واحد.

1:57:21

واحد مطلوب، واحد مفقود مطلوب

1:57:24

الوسيطة التي تعمل بالكلمات المفتاحية فقط

1:57:27

مدير. تمام. دعني أتحقق مما يلي

1:57:29

الخطأ هو. تمام.

1:57:33

تمام. أول خطأ أراه

1:57:35

أعتقد أن هذا لن ينجح. لذا

1:57:37

سنحتاج إلى استخدام invoke.

1:57:42

لذا تابع هذا

1:57:44

في الجزء المتعلق بإعادة التدوير حيث حاولنا

1:57:48

لإضافة المستندات فقط هنا. وماذا في ذلك؟

1:57:51

لا يقتصر ما نريده هنا على إلحاق المستند فحسب

1:57:54

لكن معذرةً، النتيجة هنا، لكنني أريد أيضاً...

1:57:58

ألحق جزء المستند مع

1:58:01

نتيجة

1:58:03

حتى يتمكن x1 أخيرًا من تسجيل النقاط

1:58:08

وبعد ذلك يمكن أن تتم عملية الفرز لأن

1:58:11

من هذا الكود مرة أخرى، دعونا نمسح

1:58:15

قم بإخراج هذا ثم حاول تشغيله مرة أخرى.

1:58:17

إذا واجهنا أي أخطاء أخرى، فـ

1:58:19

سأحاول تصحيح الأخطاء

1:59:00

حسناً، لقد حصلنا على إجابتنا. لذا أولاً من

1:59:04

جميعاً، سنقوم بمراجعة الإجابة. لذا

1:59:06

في البداية، ما يقوله نموذجنا هو أن

1:59:12

أنواع البيانات الأولية في بايثون هي

1:59:14

عدد صحيح، عدد عشري، رقم، سلسلة نصية،

1:59:16

و منطقي. لننتقل إلى المستند.

1:59:19

وأعتقد أننا نمتلك فقط عددًا صحيحًا،

1:59:20

عائم،

1:59:22

نوع البيانات float و string ثم boolean. الآن

1:59:25

لنذهب ونتحقق من قسم إعادة الترتيب. لذا

1:59:28

أما بالنسبة لجزء إعادة الترتيب، فأرى خمسة أساسيات

1:59:31

أنواع البيانات التي يدعمها بايثون

1:59:33

شيء ما. حسنًا، هذا أيضًا

1:59:36

تم إنشاؤه. وإلى جانب ذلك أرى

1:59:39

هناك صفحات أخرى هنا تقول

1:59:42

صفحة المتغيرات والتعيينات

1:59:44

المحتوى الرابع، محتوى الصفحة الخامس.

1:59:47

[يُشخر]

1:59:47

إذن لدينا بعض الوثائق الأخرى التي

1:59:49

يحتوي على الأمثلة أيضاً. لذا أعتقد...

1:59:52

إنه يعمل بشكل جيد للغاية. والآن سنحاول

1:59:55

لطرح سؤال متعدد الفنون. أحدهما هو

1:59:57

نوع البيانات الذي سنسأل عنه، ثم لنبدأ

2:00:00

انزل

2:00:02

إلى شيء آخر أو إلى موضوع آخر

2:00:04

ثم سنسأل

2:00:07

ما هي المجموعات المجمدة هنا؟ لذا دعني

2:00:12

قم بتحديث استفساري ثم اسأل

2:00:16

أدرج لي أنواع البيانات الأولية في

2:00:18

بايثون، وأخبرني عن

2:00:21

ماذا

2:00:23

مجمد

2:00:25

المجموعات مكتوبة بلغة بايثون. هذا نوع من

2:00:30

سؤال متعدد الفنون. لذا، سنحاول

2:00:32

تحقق مما إذا كان جهاز إعادة التقييم الخاص بي يعمل بالفعل

2:00:36

في إيجاد السياق المناسب لي لهذا الأمر

2:00:39

سؤال من جزأين، ثم أجب عليّ.

2:00:42

وفقاً لذلك.

2:01:11

تمام. إذن ما يفعله هذا هو أنه يفعل

2:01:15

زودني بمعلومات حول نوع البيانات، لكن

2:01:18

يقول إنه لا يعرف شيئاً عن المجمد

2:01:20

يتم تحديد المجموعات في السياق المحدد. لذا دعني

2:01:23

يفحص.

2:01:25

حسنًا، لدينا مجموعات مجمدة في

2:01:27

سياق

2:01:28

ثم لدينا ذلك داخل المجموعات.

2:01:32

لذا أعتقد أن إحدى المشاكل التي واجهتها هي

2:01:36

لم يستطع فصل المجمد

2:01:40

سياق المجموعة المجمدة بالإضافة إلى ذلك

2:01:42

لم أتمكن من إدراج ذلك في المستند

2:01:44

القائمة بالداخل

2:01:47

هنا.

2:01:48

أعتقد أن هذه هي المشكلة. حسنًا، سنفعل

2:01:50

جرب شيئًا آخر.

2:01:52

لنذهب إلى القمة ثم نسأل

2:01:58

شئ ما.

2:02:00

حسنًا، سنسأل عن المفتاح

2:02:04

فروع برمجة بايثون.

2:02:08

لذا سنحتفظ بالبيانات الأولية. تمام،

2:02:11

سنقوم بإزالة نوع البيانات الأولي

2:02:13

أيضاً. لذا سنبدأ أولاً بالسؤال عن

2:02:16

فرع رئيسي من برمجة بايثون

2:02:19

ثم سنسأل عن الهويات التي يمكن استخدامها

2:02:23

يُستخدم في برمجة بايثون. لذا دعني

2:02:27

غيّر هذا

2:02:30

سؤال. أخبرني عن الفروع الرئيسية

2:02:34

لغة بايثون

2:02:37

البرمجة وقائمة المعرفات التي يمكن أن تكون

2:02:43

يُستخدم في برمجة بايثون.

2:02:47

احفظ هذا.

2:02:49

أنشئ الطرفية. أعد تشغيله و

2:02:51

ثم تحقق.

2:03:21

تمام.

2:03:23

فلنرى ما هي الإجابة. لذا

2:03:26

يقول إن السياق لا يوفر معلومات حول

2:03:30

انتظر

2:03:32

إذن، فهو يعطيني الفروع الرئيسية

2:03:34

برمجة بايثون كشبكة ويب

2:03:35

التطوير، وعلوم البيانات، والعلوم

2:03:38

الحوسبة. لكن السياق لا

2:03:39

تقديم معلومات حول المعرفات التي

2:03:41

يمكن استخدامه في برمجة بايثون. أنا لا

2:03:43

تعرف على قائمة المعرفات الخاصة بلغة بايثون

2:03:44

الترميز، وهو غير موجود في

2:03:46

سياق. بما أننا لا نحصل على

2:03:48

إجابة الجزء الثاني. إذن ما يمكننا فعله هو

2:03:50

يمكننا محاولة توضيح عدد

2:03:53

المستندات المسترجعة.

2:03:55

لننتقل إلى 20 وثيقة.

2:03:58

أفضل 20 وثيقة لهذا الغرض و

2:04:01

ثم

2:04:03

ماذا يمكننا أن نفعل أكثر؟

2:04:11

لنرى

2:04:13

ثم بدلاً من أهم النتائج الرئيسية.

2:04:17

لنحصر هذا العدد في حوالي 10

2:04:22

المستندات ثم التحقق منها

2:04:27

وإذا لم يؤدِ هذا أيضاً إلى نتيجة.

2:04:30

ما يمكننا فعله هو أن يكون لدينا استفسار

2:04:34

وكيل إعادة الصياغة، أيهما يمكننا

2:04:37

أساسًا

2:04:39

أوه، قم بتكليف الشخص بمهمة كسر هذا

2:04:42

الأسئلة المكونة من جزأين إلى أسئلة متعددة

2:04:43

الأسئلة، وبعد ذلك يمكننا البحث في

2:04:46

استفسر وفقًا لذلك، ثم...

2:04:51

قم بإنشاء إجابة بصيغة مركبة.

2:04:53

لكننا سنتحقق مما سيحدث هنا و

2:04:56

إذن، يمكننا تجربة ذلك، أو يمكنك أنت المحاولة.

2:05:00

يمكنك فعل ذلك لاحقاً إذا أردت. باختصار

2:05:04

بما أننا نعمل مع وكالة راغ،

2:05:07

يمكنك الحصول على جزء لإعادة كتابة الاستعلام

2:05:11

أيّ

2:05:12

والتي يمكنك من خلالها تقديم الطلب بطريقة تجعل

2:05:14

إذا رأى سؤالاً من جزأين، فأنت

2:05:17

اطلب منه ببساطة أن ينقسم إلى قسمين

2:05:19

ثم اضغط عليه حتى يعمل.

2:05:23

فلنرى ما إذا كان السياق قد وجد

2:05:26

خارج.

2:05:28

حسناً، لقد اكتشف السياق بالفعل. لذا

2:05:31

تحسين عدد أعلى

2:05:34

لقد ساعدت النتائج الرئيسية. إذن إليك المفتاح

2:05:37

فروع لغة البرمجة بايثون.

2:05:39

حسناً، الآن أصبح الأمر أكثر تفصيلاً. و

2:05:41

أما بالنسبة لبرمجة بايثون، فإليك ما يلي

2:05:43

يمكن استخدام المعرفات في الاستوديو وكذلك في Visual

2:05:45

كود الاستوديو. إذن هذه هي المعرفات الوحيدة

2:05:48

المذكور في السياق المقدم. حسنًا،

2:05:50

وقد تم ذكرها في المرفق

2:05:51

السياق هنا.

2:05:53

لدينا دفتر Jupyter بالإضافة إلى

2:05:55

لكن برنامج VS Code لم يتمكن من التعرف عليه

2:05:58

PyCharm كمعرّف، ولكن لا بأس بذلك لأن

2:06:02

لقد وصل الأمر إلى هذه النقطة ثم

2:06:04

تم العثور على السياق. هذا ما

2:06:07

ريانكر هو، وهذه هي طريقة تنفيذنا

2:06:10

reanker in our rag in Python. لكن

2:06:13

تذكر أن هذا يتم تنفيذه في

2:06:17

رف أساسي، وبعد ذلك يمكنك أيضًا

2:06:19

قم بتنفيذه في رف الوكلاء الخاص بك باستخدام

2:06:22

نفس النهج الذي اتبعناه في

2:06:25

الفيديوهات القليلة الأخيرة بالإضافة إلى هذا الجزء الخاص بإعادة الترتيب.

2:06:29

لقد حققنا حتى الآن تصنيفًا نظيفًا

2:06:32

تم اتباع خط أنابيب يستخدم استرجاع المتجهات

2:06:34

عن طريق طبقة تسجيل النقاط التي تحسّن

2:06:36

الأهمية.

2:06:37

لكن في أنظمة الإنتاج الحقيقية،

2:06:39

غالباً ما يكون الاسترجاع أكثر تعقيداً.

2:06:41

أكثر من ذلك لأن البحث المتجهي وحده هو

2:06:44

ليست طريقة الاسترجاع الوحيدة المستخدمة في

2:06:47

أنظمة الذكاء الاصطناعي للمؤسسات. في الواقع، كثيرون

2:06:49

نظام عالي الأداء يجمع بين عدة وظائف

2:06:51

استراتيجيات الاسترجاع حتى قبل

2:06:53

تطبيق الترتيب. وهذا هو المكان الذي

2:06:56

البحث الهجين يدخل حيز التنفيذ.

2:06:58

يجمع بين نوعين مختلفين من الاسترجاع

2:07:00

الأساليب. الأول هو الاسترجاع الكثيف

2:07:02

وهو يعتمد على التضمين والدلالات

2:07:05

تشابه. ثم الثاني هو

2:07:07

استرجاع متفرق. عادةً باستخدام

2:07:09

أساليب البحث القائمة على الكلمات المفتاحية مثل BM25.

2:07:12

كان لكل من هذه الأساليب دوافعها

2:07:14

نقاط القوة والضعف الشخصية. كثيف

2:07:16

يُعدّ الاسترجاع ممتازًا في الفهم

2:07:19

المعنى والسياق، ولكن في بعض الأحيان

2:07:21

يواجه صعوبة في تحديد الكلمة المفتاحية الدقيقة

2:07:24

مباريات. يُعد الاسترجاع المتفرق أمرًا بالغ الأهمية

2:07:27

بارع في إيجاد المطابقات الدقيقة والمصطلحات النادرة،

2:07:30

لكنها تفشل في استيعاب المعنى الدلالي

2:07:32

معنى. لذا بدلاً من اختيار واحد على

2:07:35

أما أنظمة الإنتاج الأخرى فتتضافر

2:07:37

كلاهما. وهذا ينتج عنه نكهة أغنى وأكثر

2:07:40

مجموعة متنوعة من وثائق المرشحين. الآن

2:07:43

يصبح خط الأنابيب أكثر قوة. نحن

2:07:45

أولاً، قم بإجراء عملية استرجاع هجينة والتي

2:07:47

يمنحنا ذلك مجموعة قوية من المرشحين

2:07:49

من كل من الدلالات والكلمات المفتاحية

2:07:52

يبحث. ثم نمرر هذا الموسع

2:07:54

يتم إدخال مجموعة المرشحين في طبقة إعادة الترتيب.

2:07:57

ثم يقوم جهاز إعادة التعبئة بمهمته كـ

2:07:59

قبل. يقوم بتقييم كل وثيقة في

2:08:02

العلاقة بالاستعلام وتحديد فقط

2:08:04

الأكثر صلة بالموضوع. إذن النهائي

2:08:07

أصبح تصميم البنية الآن بمثابة استعلام عن

2:08:10

البحث الهجين الذي يشمل BM25 بالإضافة إلى

2:08:12

البحث عن المستندات المرشحة باستخدام المتجهات

2:08:15

إعادة ترتيب أهم السياقات ذات الصلة و

2:08:17

ثم ماجستير القانون. هذا المزيج هو

2:08:20

فعال للغاية في أنظمة الإنتاج

2:08:23

لأن البحث الهجين يضمن أننا لا

2:08:25

فقدان المستندات الهامة بسبب التضمين

2:08:27

تضمن القيود وإعادة الترتيب أننا

2:08:30

قم بإزالة التشويش وتحسين الصلة قبل

2:08:33

الجيل، ومعاً يحلون كلا الأمرين

2:08:36

جوانب مشكلة الاسترجاع

2:08:38

والدقة على نطاق واسع. هذا هو

2:08:41

تُستخدم هذه البنية في العديد من المؤسسات

2:08:43

أنظمة البحث الشبكي خاصة في

2:08:45

مجالات مثل الذكاء الاصطناعي القانوني، والأنظمة المصرفية

2:08:47

وأتمتة دعم العملاء. الآن

2:08:50

أننا نفهم كيف يتم الاسترجاع الهجين

2:08:53

تحسين عملية اختيار المرشحين، الخطوة التالية

2:08:55

السؤال المهم هو أين بالضبط

2:08:57

تندرج إعادة الترتيب ضمن وكالة كاملة

2:08:59

نظام الرفوف لأن إعادة الترتيب ليست

2:09:02

خدعة مستقلة. إنها عقدة واحدة في الداخل

2:09:05

نظام صنع قرار أكبر بكثير.

2:09:08

والآن دعونا نضع إعادة الترتيب داخل

2:09:10

صورة أكبر وأشمل. الرف الوكيل

2:09:12

النظام الذي ناقشناه في السابق

2:09:14

الفيديو لأنه في أنظمة الإنتاج

2:09:16

إعادة التصنيف ليست حالة معزولة

2:09:18

تحسين. إنها عملية اتخاذ قرار

2:09:21

نقطة داخل حلقة استدلال أكبر. لذا

2:09:24

لنقم بإعادة بناء التدفق الكامل. مستخدم

2:09:27

يقوم بإرسال استعلام ولكن بدلاً من ذلك مباشرة

2:09:29

استرجاعها والإجابة عليها،

2:09:31

يدخل النظام أولاً في سير عمل الوكيل.

2:09:33

يمكن تحليل الاستعلام وإعادة صياغته

2:09:35

إذا لزم الأمر. ثم يتم إجراء الاسترجاع

2:09:39

باستخدام البحث المتجهي أو البحث الهجين

2:09:41

يبحث. في هذه المرحلة، لا

2:09:42

قم بتمرير النتائج فوراً إلى برنامج الماجستير في القانون.

2:09:45

بدلاً من ذلك، يقوم النظام بتشغيل

2:09:47

طبقة إعادة الترتيب. وهذا هو المكان الذي

2:09:49

يتم تقييم وثائق المرشحين و

2:09:51

مُحسّن. السياق الأكثر صلة فقط

2:09:54

يتم تمريرها إلى الأمام. لكن في أنظمة الوكلاء،

2:09:57

وحتى هذه ليست الخطوة الأخيرة لأن

2:10:00

نقدم الآن عملية التقييم. النظام

2:10:02

يتحقق مما إذا كان سياق الاسترجاع

2:10:04

جيد بما يكفي لتوليد

2:10:06

إجابة موثوقة أم لا. إذا كان السياق

2:10:08

الجودة منخفضة، ويمكن للوكيل أن يختار

2:10:11

إعادة محاولة الاسترجاع. قد يعيد كتابة

2:10:13

استفسر مرة أخرى. قد يقوم بتعديل البحث

2:10:15

أو قد توسع نطاق الاسترجاع

2:10:18

نِطَاق. وهذا يُنشئ حلقة تكرارية.

2:10:20

استرجاع، إعادة ترتيب، تقييم، إعادة محاولة

2:10:23

تحسين وتوليد. وهذا هو المكان الذي

2:10:26

تصبح إعادة الترتيب ذات قوة هائلة

2:10:28

لأنه يقلل من الحاجة إلى التكرار

2:10:30

إعادة المحاولات عن طريق تحسين جودة السياق

2:10:32

في وقت مبكر من عملية الإنتاج. بعبارة أخرى،

2:10:35

تحسين التصنيف يعني عددًا أقل من العملاء الفاشلين

2:10:39

الحلقات وهذا يحسن بشكل مباشر

2:10:41

كفاءة النظام، زمن الاستجابة، والتكلفة. لذا

2:10:44

في نظام تكامل الوكلاء الكامل

2:10:47

يقع مباشرة بين الاسترجاع و

2:10:49

تقييم. إنه بمثابة مرشح

2:10:52

يُثبّت عملية الاستدلال بأكملها.

2:10:55

بدون ذلك، غالباً ما تصبح أنظمة الوكلاء

2:10:57

صاخب وغير متناسق.

2:11:00

وبذلك، يصبح النظام أكثر بكثير

2:11:02

جاهز للإنتاج. الآن وقد فهمنا

2:11:05

أين يندرج إعادة الترتيب في

2:11:06

في مجال الهندسة المعمارية، السؤال التالي هو ببساطة

2:11:08

بنفس القدر من الأهمية. متى يجب عليك فعلاً

2:11:11

استخدم إعادة الترتيب، ومتى يكون ذلك غير ضروري؟

2:11:14

تكاليف إضافية؟

2:11:17

إذن، السؤال التالي عملي. متى

2:11:20

هل ينبغي عليك فعلاً استخدام إعادة الترتيب في

2:11:22

نظام حقيقي؟ لأن إعادة الترتيب هي

2:11:25

ليس من الضروري أن يكون قوياً دائماً. في

2:11:27

في الواقع، إضافتها بشكل أعمى إلى كل رف

2:11:29

قد يؤدي خط الأنابيب أحيانًا إلى إدخال

2:11:32

تأخير وتكلفة غير ضروريين. إذن، فلنبدأ

2:11:34

قم بتحليلها بعقلية إنتاجية.

2:11:37

يصبح التصنيف ذا قيمة بالغة عندما

2:11:39

أنت تعمل مع أشياء كبيرة وصاخبة

2:11:41

قواعد المعرفة. على سبيل المثال، المؤسسة

2:11:44

أنظمة المستندات، دعم العملاء

2:11:45

قواعد البيانات، أو المستودعات القانونية، أو

2:11:48

أنظمة المعرفة المصرفية الداخلية. في

2:11:50

في هذه الحالات، غالباً ما يكون الاسترجاع وحده كافياً

2:11:52

ينتج العديد من المنتجات ذات الصلة جزئيًا أو

2:11:54

الوثائق المضللة وتكلفة

2:11:57

إن إظهار سياق خاطئ لشهادة الماجستير في القانون هو

2:11:59

عالي. وبالتالي فإن التحسن في الدقة

2:12:01

إعادة الترتيب تستحق التكلفة الإضافية

2:12:04

مسابقة. يُعدّ التصنيف مفيدًا للغاية أيضًا.

2:12:07

عندما تكون الاستفسارات معقدة أو غامضة.

2:12:10

إذا لم يتم تحديد سؤال المستخدم

2:12:12

بشكل نظيف إلى مستند واحد، استرجاع

2:12:15

يميل إلى تشتيت النتائج عبر عدة

2:12:17

المواضيع. تساعد إعادة الترتيب على إعادة التركيز

2:12:21

عن طريق اختيار الأكثر صلة

2:12:23

تفسير الاستفسار. وهو كذلك

2:12:26

أمر بالغ الأهمية في الأنظمة ذات المخاطر العالية. في أي مكان

2:12:29

الدقة أهم من السرعة.

2:12:31

في مجالات الرعاية الصحية والمالية والامتثال

2:12:33

أنظمة أو دعم اتخاذ القرارات المؤسسية

2:12:35

تصبح إعادة الترتيب، باستخدام الأدوات، شبه مستحيلة.

2:12:37

إلزامي. لكن هناك حالات

2:12:40

حيث قد لا تكون إعادة الإيداع المصرفي مطلوبة.

2:12:43

إذا كنت تعمل مع بيانات صغيرة

2:12:45

مجموعات أو أساس معرفي منتقى بعناية

2:12:47

حيث يكون الاسترجاع دقيقًا بالفعل،

2:12:49

قد لا تؤدي إضافة طبقة إعادة الترتيب إلى

2:12:52

تحقيق تحسن ملحوظ.

2:12:54

وبالمثل، في التطبيقات ذات زمن الاستجابة المنخفض

2:12:56

حيث يكون وقت الاستجابة أكثر أهمية

2:12:58

بدلاً من تحقيق مكاسب طفيفة في الدقة، قد

2:13:00

اختر تخطيه. الخلاصة الرئيسية هي

2:13:03

إعادة التصنيف ليست وضعًا افتراضيًا

2:13:05

متطلبات. إنها عملية تحسين

2:13:07

طبقة. لذا فإن الشخص الذي تقدمه حيث

2:13:10

تصبح الجودة الحيوية عائقاً أمام التقدم الاقتصادي.

2:13:12

في معظم أنظمة الإنتاج في العالم الحقيقي عند

2:13:15

قم بتوسيع نطاق هذا الاختناق في نهاية المطاف

2:13:17

يظهر. لذا، على الرغم من أنه قد لا يكون ضرورياً

2:13:20

في البداية غالباً ما يصبح

2:13:22

ضروري مع نمو النظام. الآن بعد

2:13:25

نحن نفهم أين ومتى نستخدم

2:13:26

لنختتم هذا الفيديو.

2:13:29

ربط كل ما تعلمناه

2:13:31

في ملخص نهائي.

2:13:34

فلنجمع كل شيء معاً. في

2:13:36

في هذا الفيديو، بدأنا بشيء بسيط ولكن

2:13:38

مشكلة حرجة في أنظمة الرفوف. لماذا؟

2:13:41

قد تُعطي أنظمة الذكاء الاصطناعي أحيانًا نتائج خاطئة أو

2:13:43

إجابات غير مكتملة حتى عندما

2:13:45

توجد المعلومات في المعرفة

2:13:46

قاعدة؟ ونتتبع تلك المشكلة إلى أصلها

2:13:49

إلى سببها الجذري وهو الاسترجاع

2:13:51

جودة. لقد رأينا ذلك البحث المتجهي أثناء

2:13:54

إن القوة محدودة بشكل أساسي بـ

2:13:56

التشابه الدلالي. يسترجع

2:13:59

المستندات ذات الصلة ولكن ليس

2:14:01

دائماً الأكثر صلة. وهذا يؤدي إلى

2:14:03

مشاكل مثل الانحراف الدلالي، والضوضاء في القمة

2:14:06

النتائج الرئيسية، وتجزئة السياق، و

2:14:09

قيود التضمين. ولحل المشكلة

2:14:11

ولهذا، أدخلنا مرحلة ثانية في

2:14:13

خط أنابيب الاسترجاع، وهو

2:14:15

إعادة الترتيب، وهي آلية تقوم بالتقييم

2:14:18

كل استعلام عن المستندات يرتبط مباشرة بـ

2:14:20

يعيد ترتيب النتائج بناءً على القيمة الحقيقية

2:14:22

الأهمية. لقد استكشفنا كيف يتقاطع

2:14:25

تُتيح أجهزة التشفير ذلك من خلال

2:14:27

معالجة الاستعلام والوثيقة

2:14:28

معًا بدلًا من بشكل مستقل مثل

2:14:31

بواسطة أجهزة التشفير. لقد نظرنا أيضًا إلى الواقع

2:14:34

أدوات عالمية مثل إعادة ترتيب رتبة كوهير bg

2:14:37

رتبة ورتبة جيناي اللذان يصنعان هذا

2:14:41

عملية قابلة للتوسع في أنظمة الإنتاج.

2:14:44

ثم قمنا بتنفيذ خط أنابيب عملي

2:14:46

باستخدام لانغشن ومجموعة الدردشة حيث

2:14:49

يتم تحسين نتائج الاسترجاع قبل

2:14:52

يتم إحالة الطالب إلى برنامج الماجستير في القانون. وبعد ذلك

2:14:54

قمنا بتوسيع الفكرة لتشمل الهجينة

2:14:57

أنظمة البحث التي تجمع بين الكثافة و

2:14:59

استرجاع متفرق لتحسين المرشح

2:15:02

تغطية. وأخيراً، وضعنا

2:15:05

راعي داخل رف وكلاء أكبر

2:15:07

الهندسة المعمارية حيث تعمل جنبا إلى جنب

2:15:09

إعادة كتابة الاستعلام وتقييمه وإعادة محاولته

2:15:12

حلقات لتحسين النظام ككل

2:15:14

مصداقية. الفكرة الأساسية التي يجب عليك

2:15:16

خلاصة هذا الفيديو بسيطة.

2:15:18

يسترجع البحث المتجهي المرشحين.

2:15:21

يُحدد الترتيب السياق الأفضل. وفي

2:15:23

أنظمة الإنتاج الحقيقية، جودة

2:15:26

تعتمد إجابتك النهائية بشكل كبير على

2:15:28

جودة سياقك أفضل من جودة سياقك

2:15:30

النموذج نفسه. لأن حتى الأكثر

2:15:33

لا يمكن لدرجة الماجستير القوية أن تنتج منتجاً جيداً

2:15:34

إجابة سيئة أو غير مكتملة

2:15:36

معلومة. في الفيديو التالي، سنتناول

2:15:39

تعمّق أكثر في نظام الذكاء الاصطناعي للإنتاج

2:15:41

واستكشاف مفاهيم أكثر تقدماً

2:15:44

اجعل هذه البنية قابلة للتوسع و

2:15:46

جاهز للاستخدام في المؤسسات. في الفيديو السابق،

2:15:48

لقد بنينا شيئًا مشابهًا لمعظم دروس الرفوف

2:15:51

لا تتجاوز ذلك أبداً. لقد صممنا

2:15:53

رف إنتاج جاهز

2:15:54

بنيان. لقد حسّنا عملية الاسترجاع

2:15:57

باستخدام إعادة الترتيب، رأينا كيف يعمل الذكاء الاصطناعي الحديث

2:16:00

الأنظمة ليست مجرد خطوط أنابيب، بل

2:16:03

أنظمة اتخاذ القرار متعددة الطبقات. لكن هناك

2:16:06

سؤال حاسم لم نتوصل إليه بعد

2:16:07

تمت الإجابة. كيف نعرف بالفعل ما إذا كان هناك أي

2:16:10

هل هذا يعمل بشكل صحيح؟ لأن في

2:16:13

أنظمة الذكاء الاصطناعي في العالم الحقيقي، تبدو صحيحة

2:16:15

لا يعني ذلك بالضرورة أنه صحيح. رف

2:16:18

يمكن للنظام أن ينتج عنه كلاماً طليقاً وواثقاً.

2:16:21

والإجابات المنظمة جيدًا، وستظل كذلك

2:16:24

خطأ تماماً. يمكنه استرجاع

2:16:26

وثائق تبدو ذات صلة ولكنها لا تزال

2:16:28

أغفل الإجابة الصحيحة. يمكن أن يمر

2:16:31

التقييم الأساسي، لكن الفشل الصامت في

2:16:34

الإنتاج عندما يبدأ المستخدمون الحقيقيون

2:16:36

التفاعل معه. وهذا هو المكان الذي

2:16:38

معظم أنظمة الذكاء الاصطناعي تفشل في الواقع العملي. لا

2:16:41

لأنها مبنية بشكل سيئ، ولكن

2:16:43

لأنها لا تُعالج بشكل صحيح أبدًا

2:16:46

تم قياسه. في بيئات الإنتاج، إذا

2:16:49

لا يمكنك قياس نظامك، أنت

2:16:50

لا يمكن تحسينه. وإذا لم تستطع

2:16:52

قم بتحسينه، لا يمكنك الوثوق به. و

2:16:54

ولهذا السبب فإن التقييم ليس

2:16:57

خطوة اختيارية في أنظمة الرفوف. إنه

2:16:59

متطلبات هندسية أساسية. في هذا

2:17:02

سنشرح بالتفصيل في الفيديو كيف

2:17:03

يتم تقييم أنظمة الرفوف الحقيقية في

2:17:06

إنتاج. لا يقتصر الأمر على نجاحه فحسب، بل

2:17:09

ما مدى فعاليته، ولماذا يفشل، و

2:17:11

حيث ينكسر. سنستكشف كيفية

2:17:14

قياس جودة الاسترجاع، وكيفية القيام بذلك

2:17:16

تقييم الإجابات المُولَّدة، وكيفية القيام بذلك.

2:17:18

تحديد الهلوسة وكيف هي حديثة

2:17:21

أطر عمل مثل Ragas و Deep Eval و

2:17:23

تساعد شركة لانغميث في أتمتة هذه العملية بالكامل

2:17:26

عملية.

2:17:27

لأنك بمجرد أن تفهم التقييم

2:17:29

بشكل صحيح، تتوقف عن التخمين بشأن ما إذا كان

2:17:32

النظام جيد، وستبدأ في إدراك ذلك.

2:17:34

مع البيانات. لذا سنبدأ بـ

2:17:37

فهم سبب تقييم الرفوف

2:17:39

الأنظمة أصعب بكثير مما تبدو عليه.

2:17:43

للوهلة الأولى، تقييم رف

2:17:45

يبدو النظام بسيطاً. اسأل

2:17:48

السؤال، انظر إلى الإجابة، حدد

2:17:51

سواء كان ذلك صحيحاً أم لا. الأمر بسيط، أليس كذلك؟

2:17:53

لسوء الحظ، أنظمة الرفوف في العالم الحقيقي

2:17:55

الأمر أكثر تعقيداً من ذلك بكثير.

2:17:58

لأن الذكاء الاصطناعي يختلف عن البرامج التقليدية

2:18:00

الأنظمة ليست ثابتة. إذا قمت بتشغيل

2:18:03

نفس البرنامج مرتين مع

2:18:04

نفس المدخلات، تتوقع نفس المخرجات.

2:18:07

لكن باستخدام نماذج اللغة، يمكن أن يكون الناتج

2:18:09

يتغير. صياغة مختلفة، مختلفة

2:18:11

مسارات استدلالية، إجابات مختلفة

2:18:14

الهياكل، وأحيانًا متعددة

2:18:16

يمكن اعتبار جميع الإجابات صحيحة.

2:18:18

وهذا يجعل التقييم أكثر أهمية على الفور

2:18:20

تحدٍ. لكن التعقيد لا

2:18:22

توقف هنا. نظام الرفوف ليس

2:18:25

مكون واحد. إنها في الواقع

2:18:27

مجموعة من المكونات المتعددة

2:18:29

العمل معًا. أولاً، الاسترجاع

2:18:31

يجب على النظام العثور على المعلومات الصحيحة.

2:18:33

بعد ذلك، يجب على نظام التصنيف تحديد الأولويات

2:18:36

أفضل سياق. ثم اللغة

2:18:38

يجب أن يُنتج النموذج استجابة منطقية.

2:18:41

إذا كانت الإجابة النهائية خاطئة، فأين

2:18:43

كيف حدث العطل بالضبط؟ هل كان

2:18:45

هل الإجابة مفقودة بسبب فشل عملية الاسترجاع؟

2:18:48

هل قام إعادة التقييم بدفع المستند الصحيح؟

2:18:50

هل هو بعيد جداً للأسفل؟ أم أن اللغة

2:18:52

النموذج يعاني من الهلوسة على الرغم من تلقيه

2:18:54

السياق الصحيح؟ بدون استخدام مناسب

2:18:56

يصبح التقييم شبه مستحيل

2:18:58

أن تعرف. وهذا أحد أكبر

2:19:01

التحديات في هندسة الذكاء الاصطناعي. فرد واحد

2:19:04

قد يكون للإجابة الخاطئة عدة جذور

2:19:05

الأسباب. ومن التعقيدات الأخرى أن

2:19:08

غالباً لا توجد حقيقة واحدة ثابتة

2:19:10

إجابة. لنفترض سؤالاً مثل ماذا

2:19:12

ما هي فوائد الاسترجاع الهجين؟

2:19:15

قد يقدم شخص واحد ملخصًا موجزًا

2:19:17

توضيح. قد يعطي آخر

2:19:19

إجابة فنية مفصلة. كلاهما قد يكون

2:19:21

صحيح. اختبار البرمجيات التقليدي

2:19:24

يتوقع مخرجات دقيقة. أنظمة الذكاء الاصطناعي غالباً

2:19:27

يتطلب الأمر تقييم الجودة بدلاً من

2:19:30

تطابق تام. ثم يأتي السياق

2:19:34

نفسها. في كثير من الحالات، استرجاع

2:19:36

لا تحتوي المستندات إلا على أجزاء

2:19:38

معلومة. يجب أن يدمج النظام

2:19:41

أدلة متعددة لإنتاج

2:19:43

إجابة كاملة. هذا يعني أننا لسنا

2:19:46

مجرد تقييم إجابة. نحن

2:19:48

تقييم سلسلة كاملة من الاستدلالات

2:19:50

يشمل ذلك الاسترجاع والتصنيف و

2:19:53

جيل. وهذا هو السبب في أن الخرقة الحديثة

2:19:56

ينقسم التقييم إلى عدة أقسام

2:19:59

طبقات. لا نكتفي بالسؤال فقط، هل هذا هو النهائي؟

2:20:01

أجب بشكل صحيح أو لا. بدلاً من ذلك، نسأل

2:20:04

أسئلة مثل: هل كان السياق مناسباً؟

2:20:06

هل تم استرجاعها؟ هل كان السياق المسترجع

2:20:09

مناسب؟ هل ظل الجواب صادقاً؟

2:20:11

إلى المعلومات المسترجعة؟ هل

2:20:14

هل يمكن توضيح ذلك من خلال نموذج القاعة؟ هل كان الرد

2:20:16

هل تلبي بالفعل نية المستخدم؟ و

2:20:20

هذا التحول مهم للغاية

2:20:23

لأننا بمجرد أن نتوقف عن التعامل مع التقييم

2:20:25

كنتيجة واحدة، يمكننا البدء

2:20:28

تحديد مكان النظام بدقة

2:20:29

يحتاج إلى تحسين. لذا قبل أن نتمكن

2:20:32

نقوم أولاً ببناء مسارات التقييم.

2:20:34

نحتاج إلى فهم جوانب

2:20:36

يجب قياس نظام الرفوف فعلياً.

2:20:39

إذن ما الذي يجب أن نقيسه بالضبط في

2:20:41

نظام رفوف؟ لأن أحد أكثر

2:20:44

الأخطاء الشائعة التي يرتكبها المطورون هي

2:20:46

تقييم الإجابة النهائية فقط. هم

2:20:49

اطرح سؤالاً، واقرأ الإجابة، و

2:20:51

حدد ما إذا كان يبدو جيداً. لكن

2:20:54

هذا النهج يخفي مواطن الخلل

2:20:56

يحدث بالفعل. تذكر قطعة قماش

2:20:58

النظام ليس نموذجًا واحدًا. إنه

2:21:00

خط أنابيب من المكونات المترابطة

2:21:02

ويساهم كل مكون في

2:21:05

النتيجة النهائية. وهذا يعني أن التقييم يجب أن يكون

2:21:08

يحدث ذلك على مستويات متعددة. الأول

2:21:10

المستوى هو جودة الاسترجاع. قبل

2:21:13

يمكن لنموذج اللغة أن يُولّد أي شيء

2:21:15

يجب أن يكون نظام الاسترجاع مفيدًا أولاً

2:21:17

أحضر المعلومات ذات الصلة. لذلك نحن

2:21:20

نحتاج إلى تقييم الأسئلة كما فعلنا

2:21:23

يقوم النظام باسترجاع المستندات التي هي

2:21:24

هل هذا ذو صلة بالاستعلام؟ هل تم استرجاعها؟

2:21:27

معلومات كافية للإجابة على السؤال التالي:

2:21:28

سؤال؟ هل أغفلت وثائق هامة؟

2:21:31

أم أنه استرجع الكثير من المعلومات غير ذات الصلة؟

2:21:33

سياق؟ لأنه في حالة فشل الاسترجاع، فإن

2:21:37

لقد وصلت مرحلة الجيل بالفعل إلى مرحلة رئيسية

2:21:40

خسارة. المستوى الثاني هو الجيل

2:21:42

جودة. الآن وقد أصبح للنموذج سياق،

2:21:45

ما مدى جودة استخدامه؟ هل النموذج

2:21:48

هل تمت الإجابة على السؤال بشكل صحيح؟ هل فعلها؟

2:21:50

الالتزام بالبيانات المسترجعة

2:21:52

وثائق؟ هل قدمت معلومات؟

2:21:54

ذلك لم يكن موجودًا في السياق أبدًا؟

2:21:56

بمعنى آخر، هل كان يعاني من الهلوسة؟ في هذا

2:21:58

في هذه المرحلة، نقوم بتقييم سلوك

2:22:00

نموذج اللغة نفسه. وأخيراً،

2:22:03

لدينا جودة نظام شاملة من البداية إلى النهاية. هذا

2:22:05

هذا منظور المستخدم لأن المستخدمين

2:22:08

لا يهمني ما إذا نجحت عملية الاسترجاع أم لا

2:22:10

تمت إعادة الترتيب بنجاح. إنهم يهتمون ببساطة

2:22:13

حول ما إذا كانوا قد تلقوا معلومات مفيدة

2:22:15

أجب أو لا تجب. لذا نطرح هنا سؤالاً أوسع نطاقاً

2:22:18

أسئلة. هل كان الرد مُرضيًا؟

2:22:21

ما هي نية المستخدم؟ هل اكتمل؟ هل كان ذلك؟

2:22:23

متماسك؟ أم كان ذلك يستدعي اتخاذ إجراء قانوني؟ و

2:22:26

هل يستطيع مستخدم حقيقي إكمال العملية بنجاح؟

2:22:28

ما هي المهمة التي تستخدم هذه الإجابة؟ وهذا

2:22:31

يُعد تحديد الهوية أمراً بالغ الأهمية

2:22:34

لأن النظام يمكن أن يعمل بشكل جيد في واحد

2:22:37

في مجال معين، بينما يكون أداؤه ضعيفاً في مجال آخر.

2:22:39

على سبيل المثال، قد يكون الاسترجاع

2:22:41

ممتاز، لكن النموذج قد يُصاب بالهلوسة

2:22:43

أو قد تكون الإجابة المُولَّدة صحيحة

2:22:46

لكن عملية الاسترجاع قد تكون

2:22:47

غير فعال بشكل غير ضروري. بدون

2:22:50

بفصل هذه الطبقات، لا يمكننا

2:22:52

تحديد مواطن التحسين

2:22:53

مطلوب. ولهذا السبب الإنتاج

2:22:56

لا تُنتج أطر التقييم

2:22:58

نتيجة واحدة. إنهم ينتجون مجموعة

2:23:00

من القياسات التي تساعدنا على الفهم

2:23:03

صحة النظام بأكمله. و

2:23:05

بمجرد أن نعرف ما يجب قياسه،

2:23:08

الخطوة التالية هي فهم

2:23:09

المقاييس الفعلية التي يستخدمها مهندسو الذكاء الاصطناعي لـ

2:23:12

قم بقياسه.

2:23:14

الآن وقد عرفنا الطبقات المختلفة لـ

2:23:16

لنلقِ نظرة على التقييم الفعلي

2:23:18

المقاييس المستخدمة لقياسها. لأن في

2:23:21

أنظمة الإنتاج، لا نعتمد عليها

2:23:23

الآراء. نعتمد على المصفوفة. المصفوفة

2:23:27

يسمح لنا ذلك بمقارنة إصدارات النظام،

2:23:30

اكتشاف حالات التراجع، واتخاذ القرارات

2:23:32

يعتمد على البيانات وليس على الحدس. لذا،

2:23:35

سنبدأ بمصفوفة الاسترجاع. واحد

2:23:37

تُعد الدقة من أكثر المقاييس شيوعًا

2:23:39

في K. غالبًا ما تُكتب على أنها دقة في

2:23:42

المعدل K. يقيس هذا عدد

2:23:46

المستندات المسترجعة هي في الواقع

2:23:47

مناسب. على سبيل المثال، إذا استرجعنا 10

2:23:50

الوثائق، وستة منها فقط ذات صلة، لدينا

2:23:52

الدقة عند 10 هي 60%. دقة عالية

2:23:56

هذا يعني أن نظام الاسترجاع يعيد

2:23:58

سياق مفيد بدلاً من الضوضاء.

2:24:00

مصفوفة أخرى مهمة هي الاستدعاء عند

2:24:02

مفتاح. استرجاع المقاييس ما إذا كان النظام

2:24:05

تم استرجاع جميع المعلومات المهمة بنجاح

2:24:08

الوثائق المطلوبة للإجابة على

2:24:10

سؤال. يمكن أن يتمتع النظام بمزايا ممتازة

2:24:12

الدقة ومع ذلك يفشلون لأن ذلك

2:24:14

أغفلنا وثيقة بالغة الأهمية. وهذا هو

2:24:17

لماذا غالباً ما توازن أنظمة الإنتاج

2:24:19

الدقة والاستدعاء على حد سواء. ثم لدينا

2:24:22

متوسط ​​الرتبة المتبادلة أو MR. هذا المقياس

2:24:26

يركز على تصنيف الجودة. يقوم بالتقييم

2:24:29

مدى سرعة أول وثيقة ذات صلة

2:24:31

يظهر في النتيجة بسبب العثور على

2:24:33

من المهم الحصول على الوثيقة الصحيحة، ولكن

2:24:35

إن اكتشافه مبكراً أفضل بكثير. أ

2:24:38

الوثيقة ذات الصلة في المرتبة الأولى هي

2:24:41

أكثر فائدة بشكل ملحوظ من نفس الشيء

2:24:43

الوثيقة تظهر في المرتبة 20. والآن لنبدأ

2:24:47

الانتقال إلى مصفوفة التوليد. أحد

2:24:49

أهم المقاييس في نظام الرفوف هي

2:24:52

الإخلاص. يتطلب الإخلاص الكثير

2:24:54

سؤال بسيط. هل الإجابة مدعومة؟

2:24:57

هل يتم ذلك في سياق التوظيف أم لا؟ إذا

2:24:59

تحتوي الإجابات على ادعاءات لا يمكن

2:25:02

تم تتبعها إلى المستندات المقدمة،

2:25:04

قد يكون النظام يعاني من الهلوسة.

2:25:06

يرتبط بهذا الجواب ارتباطًا وثيقًا ما يلي:

2:25:09

الملاءمة.

2:25:11

هل الاستجابة المُولَّدة فعلاً

2:25:13

هل تجيب على سؤال المستخدم؟ رد

2:25:16

قد يكون صحيحًا من الناحية الواقعية ومع ذلك يفشل

2:25:18

لأنه يعالج المشكلة الخاطئة.

2:25:20

ومن المقاييس المفيدة الأخرى السياق.

2:25:22

استخدام. هل استخدم النموذج بالفعل

2:25:25

هل يتم استرجاع المعلومات أم لا؟ أم فعل

2:25:28

يتجاهل السياق ويعتمد على

2:25:30

هل يمتلك معرفة مسبقة أم لا؟

2:25:33

يصبح هذا الأمر بالغ الأهمية بشكل خاص عندما

2:25:35

التعامل مع المؤسسات المملوكة

2:25:37

بيانات. وأخيراً، نصل إلى

2:25:39

تحديد الهلوسة. ربما

2:25:42

التحدي الأكثر نقاشاً في

2:25:44

أنظمة الذكاء الاصطناعي الحديثة. في جوهرها،

2:25:46

تحديد الهلوسة ببساطة

2:25:49

محاولة تحديد ما إذا كان

2:25:50

تحتوي الإجابة المُولَّدة على معلومات غير مدعومة

2:25:52

معلومة. في بيئة الإنتاج،

2:25:55

غالباً ما يكون هذا أحد أهم الأمور

2:25:57

يتم رصد المقاييس لأن المتحدث بطلاقة

2:26:00

قد تكون الهلوسة أكثر خطورة من

2:26:02

خطأ واضح. ومجتمعة هذه

2:26:05

تتيح لنا المقاييس تقييم عملية الاسترجاع

2:26:07

الجودة، وجودة الجيل، والجودة الإجمالية

2:26:10

موثوقية النظام.

2:26:12

لكن قياس هذه المقاييس يدويًا

2:26:15

سرعان ما يصبح الأمر مستحيلاً مع تطور النظام

2:26:17

ينمو. وهذا هو السبب بالتحديد

2:26:20

كانت أطر التقييم المتخصصة

2:26:22

مخلوق. سنتناول في القسم التالي

2:26:24

استكشف أدوات مثل Ragas و DP val و

2:26:27

اطلع على أعمال لانغسميث وشاهد كيف يقومون بالأتمتة

2:26:28

تقييم أنظمة الخرق الحديثة.

2:26:33

إذن، في هذه المرحلة نفهم ما

2:26:35

يجب قياسها وتحديد المصفوفة

2:26:37

تُستخدم بشكل شائع. لكن إذا كنت

2:26:39

بناء نظام حقيقي لإعادة تدوير الخرق يمثل مشكلة جديدة

2:26:41

يتضح بسرعة أن هذا هو الحجم.

2:26:43

تقييم عدد قليل من الأمثلة

2:26:45

يمكن إدارتها يدوياً. التقييم

2:26:47

مئات أو آلاف من حالات الاختبار

2:26:49

في كل مرة تقوم فيها بتحديث نظامك،

2:26:51

لا. هذا هو المكان الذي يوجد فيه إطار التقييم

2:26:53

يصبح أمراً ضرورياً. يقومون بأتمتة

2:26:56

عملية قياس جودة الاسترجاع،

2:26:58

جودة الإجابة، ومصداقيتها،

2:27:00

معدلات الهلوسة والنظام ككل

2:27:02

العروض. سنبدأ بواحد من

2:27:05

الإطار الأكثر شيوعًا في RAG

2:27:06

النظام البيئي الذي هو الراغا. كان راجاس

2:27:10

مصمم خصيصًا لتقييم

2:27:12

أنظمة توليد معززة بالاسترجاع.

2:27:14

بدلاً من التركيز فقط على النهاية

2:27:16

الإجابة، فهي تقيّم العلاقة

2:27:18

بين الاستعلام والسياق المسترجع

2:27:20

والاستجابة الناتجة. وهذا يسمح

2:27:22

لقياس مؤشرات مثل

2:27:24

الأمانة، وملاءمة الإجابة، والسياق

2:27:26

الدقة واستدعاء السياق. أحد

2:27:29

من أسباب قوة الراس أن

2:27:32

فهو يسمح للمطور بتقييم النظام

2:27:34

حتى عندما تكون الإجابة صحيحة تمامًا

2:27:36

غير متوفرة. ثم لدينا قيمة DP.

2:27:39

يتبنى برنامج DPAL نهجًا أوسع نطاقًا تجاه إدارة التعلم

2:27:42

تقييم. يوفر اختبارًا

2:27:44

إطار عمل يشبه إلى حد كبير

2:27:46

اختبار البرمجيات التقليدي. أنت تستطيع

2:27:48

إنشاء مجموعات التقييم، وتحديد التوقعات

2:27:51

سلوكيات واختبار الذكاء الاصطناعي الخاص بك تلقائيًا

2:27:53

يتم تطبيق النظام كلما تم إدخال تغييرات.

2:27:56

فكّر في الأمر على أنه تطبيق لاختبار الوحدات

2:27:58

مفهوم في عالم اللغة

2:28:00

نماذج. يصبح هذا الأمر ذا قيمة هائلة

2:28:03

عندما تبدأ أنظمة الذكاء الاصطناعي في النمو

2:28:05

تعقيد. ثم لدينا لانغسميث.

2:28:08

على عكس راجاس ودي بي إيه إل، فإن لانغسميث ليس

2:28:11

مجرد منصة تقييم. وهو كذلك

2:28:13

منصة للمراقبة وتصحيح الأخطاء.

2:28:16

يُمكّننا لانغسميث من تتبع كل خطوة

2:28:18

من سير العمل. يمكننا فحص عملية الاسترجاع

2:28:21

نتائج. يمكننا فحص الرسائل. بإمكاننا

2:28:23

افحص خيارات الوكلاء الوسيطين. و

2:28:26

يمكننا أيضًا تقييم المخرجات بشكل مباشر

2:28:28

من نفس الواجهة. هذا ما يجعله

2:28:31

مفيد بشكل خاص للأوراق الوكيلة

2:28:33

الأنظمة التي تتكون من مكونات متعددة

2:28:35

يتفاعلون مع بعضهم البعض. كل من هؤلاء

2:28:37

تحل الأدوات جزءًا مختلفًا من المشكلة

2:28:39

مشكلة التقييم. تساعد الراغا في قياس

2:28:41

جودة. تساعد DPL في أتمتة التقييم

2:28:45

ويساعد لانغسميث في المراقبة وتصحيح الأخطاء

2:28:48

سير العمل المعقد. وفي كثير من

2:28:50

في بيئة الإنتاج، هذه الأدوات هي

2:28:52

غالباً ما تُستخدم معاً بدلاً من

2:28:53

بشكل منفصل. لكن فهم الأدوات

2:28:56

هذا ليس سوى نصف الحقيقة. الحقيقي

2:28:58

يتمثل التحدي في بناء نظام تقييم

2:29:00

خط أنابيب يمكنه التقييم المستمر

2:29:03

أداء النظام بمرور الوقت. لذا في

2:29:05

في القسم التالي سنقوم ببناء كامل

2:29:07

سير عمل التقييم، واطلع على كيفية ذلك.

2:29:09

يقوم فريق الإنتاج باختبار و

2:29:11

تحسين أنظمة الرفوف الخاصة بهم.

2:29:14

تمام. فلنجمع كل شيء معًا

2:29:17

وفكر في تقييم عملي

2:29:19

خط الأنابيب لأنه في أنظمة الإنتاج

2:29:21

التقييم ليس شيئًا يحدث

2:29:23

يحدث ذلك مرة واحدة قبل النشر. إنها

2:29:26

ستكون عملية مستمرة. لذا كل

2:29:28

تتغير استراتيجية الاسترجاع مع مرور الوقت

2:29:31

في كل مرة يتم فيها إنشاء نموذج تضمين جديد

2:29:32

يتم تقديمها في كل مرة يتم فيها تقديم مطالبات

2:29:34

يتم تحديث المعلومات باستمرار.

2:29:36

مع ازدياد حجم القاعدة، يجب تقييم النظام.

2:29:38

مرة أخرى. ولهذا السبب فرق الذكاء الاصطناعي الناضجة

2:29:41

تعامل مع التقييم كعملية مستمرة

2:29:43

سير العمل بدلاً من عملية لمرة واحدة

2:29:45

نشاط. على مستوى عالٍ، الإنتاج

2:29:47

تبدو عملية التقييم على النحو التالي:

2:29:49

هذا. يحتوي على مجموعة بيانات التقييم.

2:29:53

يحتوي على نظام استرجاع، وتوليد

2:29:55

نظام، طبقة تسجيل النقاط، التقييم

2:29:57

تقرير. كل شيء هنا يبدأ بـ

2:30:00

مجموعة بيانات التقييم. مجموعة البيانات هذه

2:30:02

يحتوي على استعلامات اختبار مصممة بعناية

2:30:04

التي تمثل سلوك المستخدم الحقيقي. لا

2:30:07

سيناريوهات مثالية، وليست أمثلة توضيحية، ولكن

2:30:10

الأسئلة الفعلية التي من المحتمل أن يطرحها المستخدمون

2:30:13

بسأل. لكل استعلام، قد نقوم أيضًا بتخزين

2:30:16

إجابة مرجعية، وثائق ذات صلة،

2:30:19

السلوكيات المتوقعة، أو التقييم

2:30:21

معايير. الهدف هنا هو أساساً

2:30:23

إنشاء معيار يعكس

2:30:25

بيئة العالم الحقيقي التي فيها

2:30:27

النظام يعمل. بمجرد أن تصبح مجموعة البيانات

2:30:29

جاهزون، نقوم بتشغيل كل استعلام من خلال

2:30:31

طبقة الاسترجاع. يقوم النظام باسترجاع

2:30:34

الوثائق التي ستفعل ذلك بالضبط في

2:30:37

إنتاج. ثم طبقة التوليد

2:30:40

ينتج الإجابات باستخدام البيانات المسترجعة

2:30:42

سياق. وفي هذه المرحلة، أصبح لدينا الآن

2:30:44

جميع المعلومات المطلوبة لـ

2:30:46

تقييم. الاستعلام، الاسترجاع

2:30:49

المستندات والاستجابة المُولَّدة.

2:30:51

ثم تأتي طبقة التسجيل، وهي

2:30:54

حيث توجد أطر عمل مثل RAS و DP val أو

2:30:57

نماذج التقييم المخصصة تحسب

2:30:59

مقاييس مثل الإخلاص، والإجابة

2:31:02

الملاءمة، ودقة السياق، والسياق

2:31:04

يتذكر. كل استعلام يتلقى مجموعة

2:31:07

الحصول على نقاط بدلاً من مجرد تمريرة أو

2:31:09

نتيجة فاشلة. وهذا أمر بالغ الأهمية

2:31:12

مهم لأن النتيجة الفردية تساعد

2:31:14

نحدد نقاط الضعف المحددة. ل

2:31:17

على سبيل المثال، قد يشير انخفاض استدعاء السياق إلى

2:31:19

مشاكل الاسترجاع. قد يؤدي انخفاض مستوى الإخلاص إلى

2:31:22

تشير إلى الهلوسة. إجابة منخفضة

2:31:24

قد تشير الصلة إلى سرعة الاستجابة أو

2:31:26

مسائل التفكير المنطقي. المرحلة النهائية هي

2:31:28

الإبلاغ. بدلاً من التحليل

2:31:30

استفسارات فردية، فرق عادةً

2:31:32

مراقبة الإحصائيات الإجمالية. متوسط

2:31:35

الأمانة، الملاءمة المتوسطة، المتوسط

2:31:38

الاسترجاع، الدقة، الهلوسة

2:31:40

معدل الأداء واتجاهاته بمرور الوقت.

2:31:43

وهذا يسمح للمهندسين بالمقارنة

2:31:44

إصدارات النظام المختلفة بشكل موضوعي.

2:31:47

إذا تحسنت قدرة كلب الصيد الجديد على الاستجابة، ولكن

2:31:49

يقلل من الإخلاص، وهو المقابل

2:31:51

يصبح مرئياً على الفور. وهذا هو

2:31:53

القوة الحقيقية لخط أنابيب التقييم.

2:31:56

إنهم يحولون عملية تطوير الذكاء الاصطناعي لديك من

2:31:58

التخمين في الهندسة. لذا بدلاً من

2:32:01

نسأل عما إذا كان هذا الإصدار أفضل، ونحن

2:32:03

يمكن السؤال عن أي مصفوفة تحسنت، وأي

2:32:06

تراجعت المصفوفة، ولماذا؟ وبمجرد أن

2:32:08

نصل إلى هذا المستوى من القياس،

2:32:10

سيكشف ذلك عن شيء أكثر أهمية.

2:32:13

القدرة على مراقبة الأنظمة

2:32:14

بشكل مستمر بعد النشر. لأن

2:32:16

يُخبرنا التقييم بكيفية عمل النظام

2:32:18

يؤدي وظيفته أثناء الاختبار، ولكن المراقبة

2:32:21

يخبرنا كيف يتصرف في الواقع

2:32:23

عالم.

2:32:25

الآن، نحتاج إلى القيام بشيء مهم

2:32:29

تحديد الأمور التي يغفل عنها معظم المبتدئين.

2:32:32

التقييم والمراقبة ليسا

2:32:34

نفس الشيء. هما مرتبطان ارتباطًا وثيقًا ولكن

2:32:37

إنها تخدم أغراضًا مختلفة تمامًا في

2:32:39

أنظمة الذكاء الاصطناعي للإنتاج. تقييم

2:32:41

يحدث ذلك قبل أو أثناء عملية النشر.

2:32:44

تتم عملية المراقبة بعد أن يصبح النظام

2:32:46

يعيش. تخضع عملية التقييم للرقابة.

2:32:49

المراقبة أمر واقعي. في التقييم،

2:32:52

نستخدم مجموعات بيانات منتقاة بعناية. نحن ندير

2:32:54

حالات اختبار محددة مسبقاً. نحن نعرف ما نحن عليه

2:32:56

يقومون بالقياس. لكن بمجرد أن يصبح النظام

2:32:58

بعد نشر التطبيق، يتغير كل شيء. المستخدمون

2:33:01

ابدأ بطرح أسئلة غير متوقعة.

2:33:03

تغيرات في توزيع الاستعلامات، ومواضيع جديدة

2:33:06

تظهر، وتختفي الأنماط القديمة، و

2:33:08

يبدأ سلوك النظام في الانحراف

2:33:10

وقت. وهنا تكمن أهمية المراقبة

2:33:13

يصبح الأمر بالغ الأهمية لأنه حتى لو كان الرف

2:33:16

يؤدي النظام أداءً جيداً أثناء التقييم،

2:33:18

يمكن أن يتدهور ببطء أثناء الإنتاج

2:33:20

دون أن يلاحظ أحد. هذا معروف

2:33:23

مثل انحراف النموذج أو انحراف النظام. وفي

2:33:26

في أنظمة الرفوف، يمكن أن يحدث الانحراف في

2:33:28

مستويات متعددة. نموذج التضمين

2:33:31

قد تصبح أقل فعالية مع مرور الوقت

2:33:32

يتطور المجال. قد تكون قاعدة المعرفة

2:33:35

تصبح قديمة. قد تؤثر جودة الاسترجاع

2:33:37

تدهور الأداء بسبب نوع جديد من الاستعلامات أو

2:33:40

قد يزداد زمن الاستجابة بسبب النظام

2:33:41

حمولة. على عكس التقييم، فإن المراقبة

2:33:44

يركز على صحة النظام في الوقت الفعلي. نحن

2:33:47

كما يتم تتبع إشارات مستوى المستخدم. هل

2:33:50

إصلاح المستخدم مع السؤال؟ هل فعلوا ذلك؟

2:33:52

هل نتخلى عن المحادثة؟ وهل فعلوا ذلك؟

2:33:55

هل تطلب توضيحاً عدة مرات؟

2:33:57

غالباً ما تكشف هذه الإشارات المزيد عن

2:33:59

جودة النظام أفضل من أي اختبار غير متصل بالإنترنت.

2:34:02

أدوات مثل لانغسميث ولانغفيوز تصنع

2:34:05

هذه العملية أسهل بكثير من خلال توفير

2:34:07

إمكانية تتبع كل طلب بشكل كامل. نحن

2:34:10

يمكن رؤية ما يفعله كلب الاسترداد بالضبط

2:34:11

عاد، ما هو السياق؟

2:34:14

تم تمريرها إلى النموذج وكيفية النتيجة النهائية

2:34:16

تم إنشاء الإجابة. هذا المستوى من

2:34:18

تُعدّ الرؤية بالغة الأهمية في

2:34:20

بيئة الإنتاج لأنه عندما

2:34:22

إذا حدث خطأ ما، لا نريد ذلك.

2:34:24

أعتقد أننا نريد تتبعه. وبمجرد أن

2:34:26

بدمج التقييم والمراقبة، نقوم

2:34:29

احصل على صورة كاملة للنظام

2:34:30

سلوك. سيخبرنا التقييم

2:34:33

مدى جودة النظام المطلوب، بينما

2:34:34

تُخبرنا المراقبة بمدى جودة النظام

2:34:37

هو كذلك بالفعل. والفجوة بين هذين

2:34:39

الجزء الثاني هو حيث تقع معظم مشاكل الذكاء الاصطناعي في العالم الحقيقي

2:34:42

يخرج. الآن وقد فهمنا كيف

2:34:45

يتم قياس الأنظمة ومراقبتها،

2:34:47

لنختتم هذا الفيديو ونتواصل.

2:34:48

كل شيء في ملخص نهائي.

2:34:52

لذا في هذا الفيديو استكشفنا أحد

2:34:54

أكثر الأجزاء التي تم تجاهلها ولكنها بالغة الأهمية

2:34:56

أنظمة رفوف الإنتاج في المباني والتي

2:34:58

التقييم. بدأنا بـ

2:35:00

إدراك أن أنظمة الرفوف لا تفشل

2:35:02

بصوت عال. إنهم يفشلون بصمت. إنهم ينتجون

2:35:05

إجابات تبدو صحيحة، تبدو منطقية

2:35:07

أشعر بالثقة والاكتمال حتى عندما

2:35:09

إنهم مخطئون. وبدون استخدام مناسب

2:35:11

تقييم تلك الإخفاقات يكاد يكون

2:35:14

من المستحيل تحديد هويته. ثم انفصلنا

2:35:17

لماذا يُعد تقييم أنظمة الرفوف أمرًا مهمًا؟

2:35:19

أصعب بشكل أساسي من التقليدي

2:35:21

برمجة. لأننا لا نتعامل

2:35:23

مع مخرج واحد محدد. نحن

2:35:25

يتعاملون مع خط أنابيب متعدد المراحل

2:35:27

يشمل ذلك الاسترجاع والتصنيف و

2:35:29

جيل. يقدم كل منهم خاصته

2:35:32

نقاط الضعف المحتملة. ومن هناك، نحن

2:35:35

حدد ما يجب أن يكون عليه الأمر بالفعل

2:35:36

تم قياسه. جودة الاسترجاع،

2:35:38

جودة التجديد، ومن البداية إلى النهاية

2:35:40

أداء النظام. اليد التي قدمناها

2:35:43

المقاييس الرئيسية مثل الدقة، والاستدعاء، وMR،

2:35:47

الأمانة، وملاءمة الإجابة، والسياق

2:35:49

الاستخدام والهلوسة

2:35:51

تعريف. ثم نظرنا في كيفية

2:35:54

أطر عمل حديثة مثل Ragas و DPal و

2:35:56

يساعد لانغسميث في أتمتة هذه العمليات

2:35:58

التقييمات على نطاق واسع. بدلاً من

2:36:01

من خلال فحص المخرجات يدويًا، يمكننا الآن

2:36:03

بناء مسارات تقييم منظمة

2:36:06

التي تختبر النظام باستمرار

2:36:08

أداء. ثم قمنا بتوسيع هذه الفكرة

2:36:10

في سير عمل تقييم كامل حيث

2:36:13

مجموعات البيانات، وأنظمة الاسترجاع، والتوليد

2:36:16

اتحدت النماذج وطبقات التسجيل

2:36:19

لإنتاج رؤى قابلة للقياس حول

2:36:21

سلوك النظام. لكن الأهم من ذلك كله،

2:36:24

لقد توصلنا إلى تحديد حاسم.

2:36:26

التقييم ليس مراقبة. تقييم

2:36:29

يخبرنا ذلك كيف ينبغي أن يتصرف النظام

2:36:32

في ظل ظروف مسيطرة بينما

2:36:33

تُخبرنا المراقبة بكيفية عمل النظام

2:36:35

يتصرف فعلاً في العالم الحقيقي. و

2:36:37

الفجوة بين الاثنين هي حيث الحقيقة

2:36:40

تظهر مشاكل في الإنتاج. الانجراف،

2:36:42

تدهور، سلوك غير متوقع للمستخدم

2:36:45

وتعيش جميع حالات الفشل الخفية في ذلك

2:36:47

فجوة. إذا كان هناك درس رئيسي واحد يمكن استخلاصه

2:36:50

من هذا الفيديو، يتضح الأمر على النحو التالي. إذا كنت

2:36:52

لا يمكنك قياس نظام الرفوف الخاص بك، أنت

2:36:54

لا يمكن تحسينه. وإذا لم تستطع

2:36:56

راقبه، لا يمكنك الوثوق به في

2:36:59

إنتاج. في الفيديو التالي، سنتناول

2:37:01

استمر في البناء على هذا الأساس و

2:37:03

الانتقال بشكل أعمق إلى الإنتاج المتقدم

2:37:04

تقنيات تجعل أنظمة الرفوف أكثر

2:37:07

قوي، قابل للتطوير، وجاهز للاستخدام المؤسسي.

2:37:10

في الفيديوهات القليلة الماضية، ركزنا على

2:37:12

بناء أنظمة رفوف أفضل. بدأنا

2:37:15

من خلال تصميم وكالة جاهزة للإنتاج

2:37:18

هندسة الخرق. ثم قمنا بالتحسين

2:37:20

جودة الاسترجاع باستخدام إعادة الترتيب. و

2:37:23

وأخيرًا، تعلمنا كيفية التقييم

2:37:25

تستخدم هذه الأنظمة معايير المصفوفة

2:37:27

وأطر التقييم. لكن هناك

2:37:30

لا تزال مشكلة كبيرة. حتى لو كنت

2:37:32

النظام مصمم بشكل جيد، حتى لو

2:37:34

نتائج تقييمك تبدو جيدة، و

2:37:37

حتى لو كان يعمل بشكل مثالي أثناء

2:37:38

الاختبار، ماذا يحدث عندما يقوم المستخدم

2:37:41

تشير التقارير إلى أن النظام يعطي

2:37:42

إجابات خاطئة؟ كيف تجد

2:37:45

السبب الحقيقي؟ هل كان ذلك كلب الصيد؟ كان

2:37:48

هل هو المنقذ؟ هل كان ذلك بسبب التوجيه؟ أو

2:37:51

هل كان ذلك بسبب نموذج اللغة؟ أم كان الأمر كذلك؟

2:37:53

شيء آخر تمامًا؟ وهذا هو

2:37:55

حيث واجهت العديد من فرق الذكاء الاصطناعي عقبة كبيرة بسبب

2:37:59

على عكس أنظمة البرمجيات التقليدية، الذكاء الاصطناعي

2:38:01

نادراً ما تخبرك الأنظمة بمكان وجودها

2:38:03

فشل. تعطل تطبيق ويب و

2:38:06

سيعطيك سجل الأخطاء. استعلام قاعدة البيانات

2:38:08

يفشل ويمنحك استثناءً. لكن

2:38:11

يمكن لنظام الذكاء الاصطناعي أن ينتج بشكل مثالي

2:38:12

إجابة بطلاقة وثقة عالية بينما

2:38:15

أن تكون مخطئاً تماماً. والأسوأ

2:38:17

جزء من المشكلة هو أن الفشل غالباً لا يترك أثراً.

2:38:19

توجد أدلة واضحة في الخفاء. لهذا السبب

2:38:22

أصبحت إمكانية المراقبة واحدة من أهم الأمور

2:38:24

مواضيع مهمة في الذكاء الاصطناعي الحديث

2:38:26

هندسة. لأنه قبل أن تتمكن من الإصلاح

2:38:28

إذا كانت هناك مشكلة، فأنت تحتاج أولاً إلى رؤية واضحة.

2:38:31

إلى ما يحدث بالفعل في الداخل

2:38:33

النظام. وهذا بالضبط ما يعنيه هذا

2:38:36

الفيديو يتحدث عن... سنتعلم

2:38:38

كيف تقوم فرق الإنتاج بالتتبع والتصحيح و

2:38:41

أنظمة مراقبة الخرق. سنتفهم ذلك

2:38:43

ما الذي تعنيه إمكانية الملاحظة حقًا. لماذا

2:38:46

تصحيح أخطاء نظام الذكاء الاصطناعي هو أمر أساسي

2:38:48

يختلف عن تصحيح الأخطاء

2:38:50

البرامج التقليدية وكيفية استخدام أدوات مثل

2:38:52

يساعدنا لانغ في فحص كل خطوة من خطوات

2:38:55

خط أنابيب الرفوف. وبحلول نهاية هذا

2:38:57

ستتعلم من خلال الفيديو كيفية تتبع

2:39:00

طلب من لحظة قيام المستخدم باستدعاء

2:39:02

سؤال أو يطرح المستخدم سؤالاً

2:39:05

الطريق إلى الإجابة النهائية التي تم التوصل إليها بواسطة

2:39:08

نموذج. لأن أنظمة الذكاء الاصطناعي في الإنتاج،

2:39:11

هناك مبدأ واحد أهم من كل شيء

2:39:13

آخر. إذا لم تتمكن من الرؤية من الداخل

2:39:15

لا يمكنك الوثوق بهذا النظام. فلنبدأ إذن

2:39:18

ابدأ بفهم لماذا أنظمة الذكاء الاصطناعي

2:39:20

الفشل بصمت، ولماذا يجعل ذلك الأمر...

2:39:23

إمكانية الملاحظة مهمة للغاية.

2:39:25

تخيل أنك قد نشرت قطعة قماش

2:39:28

تطبيق rag لمنظمتك.

2:39:30

المستخدمون يطرحون أسئلة. كل شئ

2:39:32

يبدو أنه يعمل. ثم في أحد الأيام قام أحد المستخدمين

2:39:35

يرسل رسالة. أعطاني الذكاء الاصطناعي

2:39:37

إجابة خاطئة. يبدو ذلك في البداية وكأنه

2:39:40

تقرير بسيط عن خلل برمجي. لكن الآن يأتي دور

2:39:42

الجزء الصعب. كيف نحقق

2:39:44

هو - هي؟ لنفترض أن المستخدم سأل ماذا

2:39:47

هي شروط الأهلية لـ

2:39:49

طالبو القروض من أصحاب الأعمال الحرة و

2:39:51

رد النظام برسالة غير صحيحة

2:39:53

معلومة. أين كان الفشل

2:39:55

يحدث؟ ربما فشل الكلب المسترجع في

2:39:57

ابحث عن المستند المناسب أو ربما

2:39:59

تم استرجاع المستند الصحيح ولكن

2:40:01

قام ريانكر بتخفيض ترتيبه في القائمة، أو ربما

2:40:03

استراتيجية التجزئة فصلت العناصر الأساسية

2:40:05

المعلومات موزعة على أجزاء متعددة.

2:40:07

ربما لم يتم تصميم الموجه بشكل صحيح

2:40:09

على وجه صحيح. أو ربما نموذج اللغة

2:40:11

مجرد هلوسة رغم تلقي

2:40:14

السياق الصحيح. في هذه المرحلة نحن

2:40:16

الجميع يعلم أن الإجابة النهائية كانت خاطئة.

2:40:20

ليس لدينا أي رؤية لما يحدث خلال الرحلة

2:40:22

التي تُنتج تلك الإجابة، وهذا هو

2:40:25

التحدي الأساسي لنظام الذكاء الاصطناعي.

2:40:27

غالباً ما تكون الإخفاقات مخفية في الداخل

2:40:29

مستويات متعددة من عملية صنع القرار. ال

2:40:32

الجواب ببساطة هو العرض الأخير. ال

2:40:35

قد تكون الحالة الفعلية أو السبب الفعلي

2:40:39

موجودة في أي مكان في خط الإنتاج. هذا هو

2:40:42

يختلف اختلافًا كبيرًا عن التقليدي

2:40:43

برمجة. عندما يكون التطبيق تقليديًا

2:40:45

في حال الفشل، غالباً ما نتلقى استثناءً، و

2:40:48

رمز الخطأ أو تتبع المكدس. لكن الذكاء الاصطناعي

2:40:50

تتعطل الأنظمة بشكل متكرر دون سبب واضح.

2:40:52

تحطمت. إنهم يواصلون العمل

2:40:54

عادة. إنهم ينتجون مخرجات. هم

2:40:56

يبدون واثقين من أنفسهم، ومع ذلك فهم مخطئون.

2:40:59

وهذه هي الأمور التي نسميها صامتة

2:41:01

إخفاقات. والإخفاقات الصامتة هي

2:41:04

من بين أخطر المشاكل في

2:41:05

أنظمة الذكاء الاصطناعي الإنتاجية لأنها

2:41:08

يصعب اكتشافه، بل ويصعب أكثر من ذلك

2:41:10

التشخيص. ولهذا السبب تُعدّ إمكانية الملاحظة

2:41:12

يخرج. تمنحنا إمكانية الملاحظة

2:41:15

القدرة على النظر داخل خط الأنابيب و

2:41:17

فهم ما حدث بالضبط خلال

2:41:19

كل طلب. بدلاً من رؤية فقط

2:41:22

في الإجابة النهائية، يمكننا فحص كل خطوة.

2:41:24

وهذا ما أدى إلى تلك الإجابة. الاسترجاع

2:41:26

الوثائق، وقرارات التصنيف، و

2:41:28

المطالبات، والاستجابات النموذجية، و

2:41:30

زمن الاستجابة، واستخدامات الرمز المميز، وكل شيء. و

2:41:33

بمجرد أن نحصل على تلك الرؤية، يبدأ تصحيح الأخطاء

2:41:36

يتوقف عن كونه مجرد تخمين،

2:41:39

يصبح الأمر هندسة منهجية

2:41:41

العملية لأن الهدف لم يعد هو

2:41:43

اسأل لماذا الإجابة خاطئة. الهدف

2:41:45

والآن يصبح السؤال هو أي خطوة في مسار العمل

2:41:47

يؤدي ذلك إلى أن تصبح الإجابة خاطئة. و

2:41:49

هذا التحول في التفكير هو ما يفصل

2:41:51

تجارب الذكاء الاصطناعي من الذكاء الاصطناعي الإنتاجي

2:41:54

هندسة. الآن وقد فهمنا السبب

2:41:57

تُعدّ إمكانية الملاحظة مهمة، فلنجب على سؤال

2:41:59

سؤال أكثر جوهرية. ما هو بالضبط

2:42:01

هل هذا يعني إمكانية الملاحظة؟ لأن المصطلح هو

2:42:04

غالباً ما تُستخدم بشكل متبادل مع

2:42:06

المراقبة، على الرغم من أنها ليست

2:42:08

نفس الشيء. تُخبرنا المراقبة بما هو

2:42:10

يحدث. تُخبرنا إمكانية الملاحظة أو

2:42:13

يساعدنا ذلك على فهم سبب حدوث ذلك.

2:42:15

فكر في شبكة الإنترنت التقليدية

2:42:16

طلب. لوحة مراقبة

2:42:18

قد يخبرنا ذلك أن وقت الاستجابة قد

2:42:20

ازداد من 200 مللي ثانية إلى 1

2:42:23

ثانية. هذه معلومات مفيدة، ولكن

2:42:25

وهذا لا يفسر السبب الجذري.

2:42:27

تتيح لنا إمكانية المراقبة إجراء التحقيقات

2:42:30

تعمّق أكثر وافهم ما بداخله

2:42:32

أدى النظام إلى هذا السلوك. نفس الشيء

2:42:34

ينطبق هذا المبدأ على نظام الذكاء الاصطناعي.

2:42:36

قد تخبرنا المراقبة أن المستخدمين

2:42:39

الإبلاغ عن الإجابات غير الصحيحة أو أن

2:42:41

ازداد زمن الاستجابة أو تلك الرمزية

2:42:43

ارتفع الاستهلاك بشكل حاد. لكن

2:42:45

تساعدنا إمكانية الملاحظة على تتبع كل شيء

2:42:47

سير العمل وفهم المكان بالضبط

2:42:50

نشأت تلك المشكلات. وهذا

2:42:52

يصبح التمييز في غاية الأهمية

2:42:54

في أنظمة الخرق لأن تطبيق الخرق

2:42:57

ليس نموذجًا واحدًا. إنه

2:42:59

مجموعة من المكونات المترابطة.

2:43:01

يقوم المستخدم بإرسال استعلام. الاستعلام هو

2:43:03

تم تحويلها إلى تضمينات. كلب الصيد

2:43:06

يبحث في قاعدة المعرفة. بائع متجول

2:43:08

قد يعيد ترتيب النتيجة. المختار

2:43:10

يتم إدراج السياق في موجه الأوامر. ال

2:43:12

يقوم نموذج اللغة بإنشاء استجابة. و

2:43:14

وأخيراً، يتم إرجاع الإجابة إلى

2:43:16

مستخدم. كل خطوة من هذه الخطوات يمكن

2:43:19

التأثير على الناتج النهائي. وهذا يعني

2:43:21

كل خطوة من هذه الخطوات تحتاج إلى

2:43:23

الرؤية. في بيئة الإنتاج،

2:43:25

نرغب عادةً في مراقبة

2:43:27

استعلام المستخدم الأصلي، الاسترجاع

2:43:29

المستندات، درجات التشابه

2:43:31

يُعيّنه المُسترجع،

2:43:32

إعادة ترتيب الدرجات، السياق النهائي

2:43:35

تم إرسالها إلى النموذج، والموجه نفسه،

2:43:37

الاستجابة المُولَّدة، زمن الاستجابة

2:43:40

كل خطوة، واستهلاك الرموز المميزة،

2:43:42

وأحيانًا حتى التكلفة المرتبطة بذلك

2:43:44

مع كل طلب. عندما يحدث كل هذا

2:43:47

المعلومات متوفرة، شيء ما

2:43:48

تحدث أمور مؤثرة. كل طلب من المستخدم الآن

2:43:51

يصبح أثراً، سجلاً كاملاً لـ

2:43:54

كيف عالج النظام ذلك الطلب

2:43:55

من البداية إلى النهاية. بدلاً من الرؤية

2:43:58

الإجابة النهائية فقط، يمكننا الآن

2:43:59

فحص عملية اتخاذ القرار بأكملها.

2:44:02

وهذه هي الفكرة الأساسية وراء

2:44:04

إمكانية الملاحظة. ليس مجرد جمع

2:44:06

السجلات، وليس مجرد مقاييس المراقبة، ولكن

2:44:09

توفير مستوى كافٍ من الرؤية لـ

2:44:11

إعادة بناء وفهم أي سلوك

2:44:13

داخل النظام. لأنه مرة واحدة كل

2:44:15

يصبح الطلب قابلاً للتتبع، مما يسهل عملية تصحيح الأخطاء.

2:44:18

يصبح الأمر أسهل بكثير. وذلك

2:44:20

يقودنا هذا مباشرة إلى التحدي التالي.

2:44:23

لماذا يُعد تصحيح أخطاء نظام الرفوف أمرًا مهمًا؟

2:44:24

أصعب بكثير من تصحيح الأخطاء

2:44:27

أنظمة البرمجيات التقليدية. تمام. لذا

2:44:29

قد تتساءل عما إذا كانت قابلية الملاحظة

2:44:31

يمنحنا ذلك رؤية واضحة للنظام.

2:44:34

لماذا لا يزال تصحيح أخطاء تطبيق rag

2:44:36

هل يعتبر ذلك صعباً؟ يكمن الجواب في

2:44:38

طبيعة نظام الذكاء الاصطناعي نفسه.

2:44:41

أنظمة البرمجيات التقليدية عادة ما تكون

2:44:43

حتمية.

2:44:45

وباستخدام نفس المدخلات، فإنهم ينتجون

2:44:47

نفس النتيجة. إذا تعطل شيء ما، فهناك

2:44:49

غالباً ما تكون سلسلة مباشرة من الأسباب و

2:44:51

تأثير يمكن تتبعه من خلال السجلات،

2:44:53

الاستثناءات، أو تتبعات المكدس. لكن الرف

2:44:55

الأنظمة مختلفة. إنها مؤلفة

2:44:57

من مكونات احتمالية متعددة

2:44:59

العمل معًا. ويمكن لكل مكون أن

2:45:02

يفشل بطريقته الفريدة. لنلقِ نظرة

2:45:04

في خط إنتاج نموذجي. مستخدم

2:45:06

يرسل استعلامًا. تم تضمين استعلام.

2:45:09

يبحث الكلب المسترجع عن المعلومات ذات الصلة

2:45:11

وثائق. قد يقوم عامل إعادة الترتيب بإعادة ترتيب تلك الأشياء

2:45:14

وثائق. السياق المحدد هو

2:45:16

تم إدراجه في موجه الأوامر. اللغة

2:45:18

يقوم النموذج بتوليد استجابة والنتيجة النهائية

2:45:20

يتم إرجاع الإجابة إلى المستخدم. الآن

2:45:22

تخيل أن الإجابة خاطئة. لذا في البداية

2:45:25

قد يبدو للوهلة الأولى أن اللغة

2:45:27

لقد ارتكب النموذج خطأً. لكن في الواقع

2:45:29

قد يكون السبب الجذري موجودًا في وقت مبكر جدًا

2:45:32

خط الأنابيب. على سبيل المثال، كلب الصيد

2:45:35

ربما كتبوا أشياء لا علاقة لها بالموضوع

2:45:36

وثائق. في هذه الحالة، النموذج لا

2:45:39

كان لديه إمكانية الوصول إلى المعلومات الصحيحة.

2:45:41

أو ربما عثر الكلب المسترجع بالفعل على

2:45:43

الوثيقة الصحيحة ولكن...

2:45:45

دفعه إلى أسفل إلى وضعية أدنى. ال

2:45:47

كان الجواب موجودًا لكنه لم يصل أبدًا

2:45:49

نموذج. ثمة احتمال آخر وهو تقسيم البيانات إلى أجزاء.

2:45:53

ربما تم تقسيم المعلومات المطلوبة

2:45:55

عبر أجزاء متعددة أثناء الحقن.

2:45:57

لم يعثر الكلب المسترجع إلا على جزء واحد من

2:45:59

إجابة تؤدي إلى سياق غير مكتمل.

2:46:01

ثم لدينا ما يتعلق بالإشعارات

2:46:03

إخفاقات. قد يكون السياق الصحيح

2:46:06

تم استرجاعها وتصنيفها بشكل صحيح، ولكن

2:46:08

فشلت التعليمات في توجيه النموذج

2:46:10

لاستخدام تلك المعلومات بفعالية. و

2:46:12

وأخيراً، لدينا الهلوسة. ال

2:46:14

استرجع النظام السياق الصحيح. ال

2:46:16

كانت التعليمات صحيحة، ومع ذلك لا يزال النموذج

2:46:18

توليد معلومات غير مدعومة. يلاحظ

2:46:20

ما الذي يجعل هذا الأمر صعباً؟ نفس الشيء

2:46:23

في النظام، قد يكون سبب الإجابة الخاطئة هو

2:46:26

إخفاقات مختلفة تماماً. و

2:46:27

بدون رؤية للوسيط

2:46:29

جميع هذه السيناريوهات تبدو على شكل خطوات

2:46:32

متطابقة من الخارج. وهذا هو

2:46:34

لماذا يُعد تصحيح أخطاء نظام الذكاء الاصطناعي أمراً أساسياً؟

2:46:36

يختلف عن تصحيح الأخطاء التقليدية

2:46:38

التطبيقات. لا يمكننا ببساطة إجراء فحص

2:46:40

الناتج النهائي. نحتاج إلى فحص

2:46:42

سلسلة كاملة من الخيارات التي تُنتج

2:46:45

الناتج. بمعنى آخر، نحن لا نقوم بتصحيح الأخطاء

2:46:47

إجابات. نقوم بتصحيح أخطاء خطوط الأنابيب. وبمجرد أن

2:46:50

تبنّ هذه العقلية، السؤال التالي

2:46:52

يصبح الأمر واضحاً. إذا أردنا تصحيح الأخطاء

2:46:54

خط الأنابيب، ما الذي يجب أن نكون عليه بالضبط؟

2:46:56

هل يتم التتبع والتسجيل في كل مرحلة؟ الآن

2:47:00

دعونا ننظر أو دعونا نتحدث عما نحن عليه

2:47:03

ينبغي تتبع ذلك بالفعل لأن أحد

2:47:05

أكثر الأخطاء شيوعاً التي ترتكبها الفرق هي

2:47:08

إما جمع معلومات قليلة جداً

2:47:09

أو معلومات كثيرة جداً. هدف

2:47:12

لا يقتصر الهدف من الملاحظة على التسجيل

2:47:14

كل شئ. الهدف هو تسجيل

2:47:16

معلومات تساعدنا على إعادة البناء

2:47:18

وشرح سلوك النظام. وماذا في ذلك

2:47:21

هل ينبغي لنظام إنتاج الخرق أن يلتقط؟

2:47:23

لنبدأ من البداية. ال

2:47:25

أول شيء يجب أن نسجله دائمًا هو

2:47:27

استعلام المستخدم. هذا يبدو بديهياً، لكن

2:47:30

إنه أمر بالغ الأهمية. بدون

2:47:33

يصبح من المستحيل، وفقًا للاستعلام الأصلي،

2:47:35

أعد إنتاج الطلب لاحقاً و

2:47:37

تُعدّ إمكانية التكرار أساسًا لـ

2:47:39

تصحيح الأخطاء. ثم تأتي عملية الاسترجاع

2:47:42

طبقة. لكل استفسار، يجب أن نسجل

2:47:44

استرجاع المستندات. باختصار،

2:47:46

البيانات الوصفية ودرجة التشابه

2:47:48

تم تعيينه من قبل الكلب المسترجع. وهذا يسمح

2:47:51

لنجيب على سؤال مهم للغاية.

2:47:54

هل استعاد النظام الحق

2:47:55

معلومات أم لا؟ إذا كانت الإجابة لا،

2:47:58

لقد وجدنا السبب الجذري بالفعل. لو

2:48:00

نعم، سنواصل.

2:48:01

يجري التحقيق. الطبقة التالية هي

2:48:03

إعادة الترتيب. إذا كان نظامك يستخدم

2:48:06

يا ريانكر، يجب عليك تسجيل المرشح

2:48:08

الوثائق، والنتائج ذات الصلة، و

2:48:10

الترتيب النهائي. هذا يساعدنا

2:48:13

تحديد ما إذا كانت المستندات المهمة

2:48:15

تم دفعها بشكل صحيح إلى أسفل القائمة أو

2:48:18

ما إذا كانت الوثائق غير ذات الصلة

2:48:20

تمت الترقية. بعد الاسترجاع وإعادة الترتيب

2:48:22

يأتي بناء السياق وهذا هو

2:48:25

المعلومات الدقيقة التي ستكون

2:48:27

تم تمريرها إلى نموذج اللغة. في كثير

2:48:29

في حالات فشل الإنتاج، لا تكمن المشكلة في

2:48:31

الاسترجاع نفسه. هكذا يتم الاسترجاع

2:48:33

تم تجميع الوثائق في النسخة النهائية

2:48:35

سياق. ولهذا السبب يجب علينا دائماً

2:48:38

سجل السياق النهائي الذي يصل

2:48:39

النموذج. ثم يأتي أحد أكثرها

2:48:42

أهم القطع الأثرية في جميع أنحاء

2:48:44

النظام، الموجه. تذكر التعليمات

2:48:46

هي مجموعة التعليمات التي تحكم

2:48:48

كيف يستخدم النموذج البيانات المسترجعة

2:48:50

معلومة. يمين؟ لذا فهو تصميم سيئ

2:48:52

قد يتسبب التنبيه في حدوث أعطال حتى عندما

2:48:55

الاسترجاع مثالي، ولهذا السبب فهو سريع

2:48:57

الرؤية أمر ضروري. ثم نسجل

2:49:00

استجابة النموذج ليست فقط النتيجة النهائية

2:49:02

تم عرض الإجابة للمستخدم ولكن

2:49:04

مخرجات كاملة تم إنشاؤها. وهذا يسمح

2:49:06

لنقارن الاستجابة مع

2:49:08

السياق وتحديد ما إذا كان

2:49:10

حدثت الهلوسات أم لا. و

2:49:12

وأخيرًا، نلتقط العمليات التشغيلية

2:49:15

مقاييس m أشياء مثل زمن الاستجابة، والرمز المميز

2:49:18

الاستخدام، ووقت تنفيذ النموذج، والطلب

2:49:20

يكلف. لأن أنظمة الذكاء الاصطناعي الإنتاجية

2:49:22

لا يتم تقييمها بناءً على الجودة فقط، بل

2:49:25

كما تم تقييمها من حيث الكفاءة. عندما

2:49:28

اجمع كل هذه المعلومات

2:49:29

معًا، يحدث شيء مهم.

2:49:31

يصبح كل طلب من المستخدم الآن كاملاً

2:49:34

يتعقب. التتبع هو في الأساس خط زمني

2:49:36

من كل ما فعله النظام منذ البداية

2:49:39

لإنهاء الأمر. الاستعلام، الاسترجاع

2:49:42

القرارات، قرارات الترتيب،

2:49:43

الموجه، الجيل، المصفوفة،

2:49:46

كل شئ. وبمجرد أن نحصل على آثار،

2:49:48

اكتساب القدرة على إعادة التشغيل والفحص و

2:49:51

فهم أي طلب يدخل

2:49:53

نظام. وهذا هو أساس

2:49:56

منصات مراقبة الذكاء الاصطناعي الحديثة. و

2:49:58

في القسم التالي، سنلقي نظرة على واحد

2:50:00

من أكثر الأدوات استخدامًا لهذا الغرض

2:50:02

الغرض في النظام البيئي لانجن، والذي

2:50:04

هو لانغسميث. والآن دعونا ننتقل من الجانب النظري

2:50:07

إلى الأداة الفعلية التي تصنع كل شيء

2:50:09

هذا عملي في الأنظمة الحقيقية وهو

2:50:12

لانغميث. لذا فإن لانغسميث هو أحد

2:50:14

منصة المراقبة الأكثر استخدامًا على نطاق واسع

2:50:16

في النظام البيئي لانغشن وهو

2:50:18

مصمم خصيصًا لتتبع LLM

2:50:20

وتطبيق قطعة قماش. في جوهرها لغة

2:50:24

يحل مشكلة واحدة بسيطة ولكنها بالغة الأهمية.

2:50:27

كيف ترى كل ما حدث؟

2:50:28

داخل مسار الذكاء الاصطناعي الخاص بك دون تدخل يدوي

2:50:30

هل يتم تجهيز كل خطوة بالأجهزة؟ لأن في

2:50:33

الأنظمة التقليدية، تصحيح الأخطاء عادة

2:50:35

يتطلب تسجيلًا صريحًا في كل

2:50:37

منصة. لكن في طلبات الحصول على درجة الماجستير في القانون، هذا

2:50:39

يصبح الأمر فوضوياً بسرعة كبيرة. أنت

2:50:42

التعامل مع المطالبات والتضمينات،

2:50:43

الاسترجاع، وإعادة الترتيب، ومخرجات النموذج

2:50:45

كل ذلك في تدفق واحد. لانغميث يبسط

2:50:48

يتم ذلك عن طريق التقاط بياناتك تلقائيًا

2:50:50

خط الأنابيب بأكمله. لذا بدلاً من القيام بذلك يدوياً

2:50:53

بناء نظام تسجيل من الصفر،

2:50:55

ستحصل على رؤية منظمة لكل شيء

2:50:58

خطوة التنفيذ. يصبح كل طلب

2:51:00

تتبع، وكل تتبع يحتوي على كامل

2:51:02

تحليل مسار البيانات من المستخدم

2:51:04

الاستعلام لاسترجاع النتائج إلى

2:51:06

خطوات المعالجة الوسيطة لـ

2:51:08

مخرجات النموذج النهائي وأداء متساوٍ

2:51:10

مقاييس مثل زمن الاستجابة واستخدام الرموز المميزة.

2:51:13

ما يجعل لانغسميث قوياً ليس

2:51:16

مجرد تسجيل، إنه منظم

2:51:17

إمكانية الملاحظة. أنت لا ترى فقط

2:51:20

سجلات نصية خام. أنت ترى عرضًا هرميًا

2:51:22

من خط أنابيب الرفوف بالكامل مما يجعل

2:51:25

يسهل ذلك كثيراً تحديد أماكن الأشياء

2:51:27

حدث خطأ. على سبيل المثال، يمكنك

2:51:30

قم بالتحقق فوراً مما إذا كان

2:51:31

أعاد الموظف مستندات غير ذات صلة

2:51:33

أو ما إذا كانت الوثيقة الصحيحة هي

2:51:35

تم استرجاعها ولكن فُقدت أثناء إعادة الترتيب أو

2:51:37

ما إذا كان الموجه قد فشل في استخدام

2:51:39

السياق بشكل صحيح أو ما إذا كان النموذج

2:51:42

يُصاب بالهلوسة رغم امتلاكه للقدرة الصحيحة

2:51:43

معلومة. وهذا هو بالضبط

2:51:46

نوع الرؤية الذي نحتاجه لـ

2:51:48

أنظمة الذكاء الاصطناعي للإنتاج لأنه بدونها

2:51:51

يصبح تصحيح الأخطاء ضرباً من التخمين. والآن لنبدأ

2:51:53

ننتقل الآن إلى الجزء العملي. سنحدد

2:51:54

قم بتطوير Langchain ودمجه مع

2:51:56

خط أنابيب بسيط للرفوف حتى نتمكن من البدء

2:51:58

تتبع الطلب الحقيقي من البداية إلى النهاية. الآن في

2:52:01

سأقوم أولاً بتثبيت Langsmith

2:52:06

في بيئتي الافتراضية. هذا هو

2:52:08

نفس مجلد المشروع الذي كنت أستخدمه

2:52:10

في فيديوهاتي السابقة. فلنقم بالتثبيت

2:52:14

هذا.

2:52:17

حسنًا، تم تثبيت مكتبة لانغميث.

2:52:22

والآن لننتقل إلى موقع لانغميث الإلكتروني.

2:52:31

تمام. يمكنك ببساطة تسجيل الدخول هنا.

2:52:34

باستخدام بيانات اعتمادك.

2:52:38

بمجرد تسجيل الدخول، سأرى هذا

2:52:40

نافذة هنا. لدي هنا بعض المشاريع

2:52:43

ذلك الذي فعلته سابقاً.

2:52:47

الآن سأنتقل من هذه النافذة إلى التتبع

2:52:49

البدء السريع وإنشاء واجهة برمجة تطبيقات (API) بشكل أساسي

2:52:52

مفتاح. فلنضغط على زر إنشاء مفتاح API.

2:52:56

سأقوم بنسخ مفتاح API هذا ثم

2:52:58

ألصقها في ملف البيئة الخاص بي هنا. لذلك بالنسبة لـ

2:53:03

سأعرّف المفتاح على النحو التالي:

2:53:05

لانجي

2:53:07

مفتاح. لنلصق هذا.

2:53:11

سأقوم بلصق مفتاح API الخاص بي هنا.

2:53:14

والآن بعد هذا، ماذا أحتاج أيضاً؟

2:53:17

حسنًا، لنبدأ

2:53:20

انسخ كل شيء من هذا السطر و

2:53:23

ثم سنستخدمه وفقًا لذلك. لذا

2:53:27

دعني ألصق كل شيء هنا. وماذا في ذلك

2:53:31

ما أحتاجه هو إزالة هذا التصدير. أنا

2:53:33

أحتاج إلى تتبع سلسلة الخطوط هذه. لنحافظ

2:53:36

هذه النقطة النهائية.

2:53:38

لقد قمتُ بالفعل بلصق مفتاح API الخاص بي، لذا

2:53:40

لست بحاجة إلى هذا.

2:53:42

لذا فإن اسم المشروع يُطلق عليه ببساطة من قبل

2:53:48

النظام نفسه. الآن لست بحاجة إلى...

2:53:51

مفتاح API المفتوح لأنني لن أفعل ذلك

2:53:53

استخدم الذكاء الاصطناعي المفتوح على منصتي. هذا هو

2:53:56

إعداداتي الأساسية لتتبع اللغة.

2:54:03

تمام. الآن سنقوم بإنشاء ملف جديد.

2:54:06

لنسمي هذا freeing.ai.

2:54:10

مواجهة rag.py.

2:54:13

سنقوم بتطبيق رقعة بسيطة للغاية هنا.

2:54:16

لذا من سلسلة لانج

2:54:19

مجموعة

2:54:21

سأحاول الاحتفاظ بمجموعة الدردشة التي أستوردها

2:54:24

بسيط

2:54:26

فقط لتوضيح جانب التتبع

2:54:28

هنا. لذا فإنّ نقاط النواة lchain

2:54:34

المطالبات

2:54:36

يستورد

2:54:37

نموذج رسالة دردشة. حسناً، دعني

2:54:40

حدد برنامج الماجستير في القانون الذي سيأتي

2:54:42

من مجموعة الدردشة.

2:54:48

سيكون اسم مجموعة الدردشة هو

2:54:51

بما أننا استخدمنا اللاما بالفعل

2:54:54

3.3

2:54:56

70 مليار

2:55:00

متنوع القدرات.

2:55:04

بعد ذلك، دعني أحدد موضوعي. لذا

2:55:06

سيتم تحديد موجه الأوامر الخاص بي من

2:55:08

نموذج رسالة دردشة، ودعني أضعه من

2:55:13

نموذج.

2:55:15

لقد أنجزتُ مهمتي هنا.

2:55:18

طلبي هو استخدام ما يلي

2:55:22

سياق لـ

2:55:25

أجب عن السؤال.

2:55:29

سؤال. تمام. والآن ضع ذلك في سياقه.

2:55:35

أقدم السياق كسياق

2:55:39

وبالمثل، دعونا نقدم

2:55:43

سؤال كـ

2:55:46

سؤال.

2:55:52

تمام. بعد الانتهاء من هذا، دعني أوضح

2:55:55

سلسلة

2:55:57

باستخدام موجه الأوامر lm. حسناً، إذا كنت لا تعرف

2:56:02

لمعرفة كيفية عمل هذه السلسلة، عليك الذهاب إلى

2:56:04

مقاطع الفيديو السابقة الخاصة بي حيث قمت

2:56:07

فيديوهات مدتها سبع ساعات تقريباً مخصصة

2:56:11

سلسلة اللغات أو كيفية استخدامها. لذا، أنا

2:56:13

تخيل لو ذهبت إلى ذلك الفيديو ثم

2:56:15

أكمل هذا الجزء، وستكون أكثر بكثير

2:56:18

توضيح استخدام السلاسل، ثم لماذا

2:56:21

هل تفهم لماذا ننشئ سلاسل وأشياء من هذا القبيل؟

2:56:23

الذي - التي. لذا،

2:56:25

سنقوم باستدعاء هذه السلسلة في الوقت الحالي.

2:56:27

استدعاء، نحتاج إلى تمرير الاثنين

2:56:30

المعلمات أو العنصرين النائبين اللذين

2:56:32

لقد أنشأنا هنا. الأول

2:56:34

العنصر النائب هو السياق.

2:56:36

لذا سأكتب بنفسي في سياق الموضوع.

2:56:39

سيتم إنشاء هذا بالفعل من

2:56:43

مزيج من أجزاء مختلفة، لكنني

2:56:46

أحاول تبسيط الأمور هنا. لذا تتبع

2:56:48

تطبيقات الأفلام

2:56:50

من البداية إلى النهاية، ودعني أمرّ بـ

2:56:54

سؤال. إذن، سؤالي هو

2:56:57

ما هو

2:56:59

سلسلة

2:57:01

ما الغرض من استخدامه؟

2:57:03

حسنًا، كان من المفترض أن يكون LSmith ولكن

2:57:05

على أي حال، سأغير هذا إلى الطول.

2:57:12

حسناً، الآن يمكننا أخيراً طباعة

2:57:15

الرد.

2:57:20

يبدو هذا لك الآن بسيطًا للغاية

2:57:23

رمز سلسلة أوه لانغ أو

2:57:26

أو شيء مشابه لنموذج الدردشة

2:57:28

هنا صحيح، لكننا فعلنا ذلك بالفعل

2:57:31

هناك شيء أكثر أهمية بكثير في هذا الأمر.

2:57:33

قم بتضمين آثار هذه السلسلة المحددة

2:57:36

هنا. إذا قمت بتشغيل هذا، فسأعرض لك ذلك فقط

2:57:38

أنت تعرف كيف يعمل جزء التتبع هذا. لذا

2:57:42

لنقم بتشغيل ملف tracing.py هذا بواسطة

2:57:52

ينبغي أن نحصل على إجابة هنا.

2:57:55

تمام.

2:58:00

حسناً. أعتقد أننا أغفلنا شيئاً ما

2:58:01

هنا. كان ينبغي علينا أيضًا التحميل من

2:58:05

إيصال

2:58:09

load.v لتحميل بيانات الاعتماد فعليًا

2:58:11

في هذا الملف.

2:58:14

تمام. والآن دعوني أوضح هذا الأمر و

2:58:16

ثم أعد تشغيل هذا.

2:58:24

حسنًا، كان من المفترض أن تكون هذه محادثة.

2:58:27

نموذج التوجيه.

2:58:30

إذا أفسدت هذا الأمر مرة أخرى، فسيكون الاستيراد

2:58:32

في الواقع، هذا خطأ. لنقم بتضمين دردشة حفلة التخرج

2:58:35

القالب هنا. ومن هنا، لنبدأ

2:58:39

قم بعمل نموذج رسالة دردشة. ثم واضح

2:58:42

قم بتشغيل هذا مرة أخرى.

2:58:50

تمام. لذا إذا رأيت أننا حصلنا على إجابة

2:58:52

من النموذج. حسنًا، لقد حصلنا على

2:58:55

الإجابة من النموذج. لكن إذا عدنا إلى الوراء

2:58:57

ثم نتحقق من متصفحنا، وبعد ذلك ينبغي علينا

2:59:00

شاهد التتبع الكامل لكيفية عمل النموذج

2:59:03

تم تنفيذه أيضاً.

2:59:06

تمام. لذا إذا رأيت هذا التتبع

2:59:08

القسم قبل بضع ثوانٍ، مشروع جديد

2:59:11

تم إنشاؤه ثم تم تشغيله بشكل أساسي

2:59:15

وكان معدل الخطأ هنا 0%. والآن

2:59:18

لننتقل إلى التتبع ونرى ماذا

2:59:20

حدث هذا بالفعل هنا. إذا فتحت

2:59:22

هذا

2:59:25

عندها يمكننا رؤية المدخلات أيضًا كما نحن

2:59:27

يمكنك رؤية الناتج هنا. زمن الاستجابة

2:59:29

10.38

2:59:30

ثوانٍ. كما تم تحديد وقت البدء.

2:59:33

إجمالي الرموز التي تم استخدامها

2:59:36

كان عمره 86 عامًا. ولكن بما أننا إذا عدنا إلى...

2:59:40

الكود، نرى أن لدينا، لدينا

2:59:45

تم تقسيم النموذج بأكمله إلى جزأين. ال

2:59:48

أولاً، الموجه، ثم الثاني

2:59:49

جزء من ذلك هو برنامج الماجستير في القانون. فلنفتح هذا و

2:59:53

انظر ماذا حدث هنا بالفعل. تمام.

2:59:55

كما ترون، كان لدينا برنامج قابل للتنفيذ

2:59:58

التسلسل وداخل ذلك الملف القابل للتنفيذ

2:59:59

نستخدم في هذا التسلسل نموذج دردشة gro. لذا

3:00:02

كان السؤال هو: ما هي اللغة؟

3:00:05

يُستخدم من أجل ثم السياق الذي نستخدمه

3:00:07

لقد نجحت هذه اللغة

3:00:10

تطبيق lm من البداية إلى النهاية والذي كان لدينا

3:00:12

تم تمريرها من نموذجنا. الآن يمكنك أن ترى

3:00:15

تفاصيل أكثر بكثير عن سماتك

3:00:19

بخصوص هذا الرد تحديداً هنا. لو

3:00:21

تدخل إلى نموذج الدردشة المحدد هذا،

3:00:24

سترى ما هي المحادثة بالفعل

3:00:26

ما هو الرسم البياني أو ما هو أساسًا

3:00:28

أدخل هنا. إذن، كان هذا هو السؤال المطروح. ال

3:00:31

كانت المخرجات التي قدمها النموذج كالتالي

3:00:34

وبعد ذلك يمكنك رؤية الباقي

3:00:36

البيانات الوصفية

3:00:38

أه، هذا ما قدمه السؤال بالفعل. لذا

3:00:41

دعونا نرى أيضًا المدخلات والمخرجات كـ

3:00:44

بالإضافة إلى السمات. حسناً، هذه هي

3:00:46

كل شيء هو نفس الشيء الذي رأيناه

3:00:48

في وقت سابق من التعليقات.

3:00:52

لذلك على الرغم من أننا لم نضيف أي شيء

3:00:54

رمز التسجيل، لانغسميث في الواقع

3:00:57

تم التقاط طلب الإدخال الخاص بنا تلقائيًا،

3:00:59

استدعاء النموذج، استجابة الإخراج كـ

3:01:02

وكذلك وقت التنفيذ. الآن شارك

3:01:05

عند تشغيل الكود، رأيت ذلك في

3:01:07

لانغميث، لقد رأيت الطلب كاملاً

3:01:10

ضغط. لقد رأيت أيضًا إدخال الموجه،

3:01:13

ما هي المدخلات التي تم إدخالها في النموذج؟ أنت

3:01:15

كما اطلعت على مخرجات النموذج بالإضافة إلى

3:01:18

كمون. وهنا لدينا زمن الاستجابة كـ

3:01:21

وكذلك استخدام الرمز المميز هنا. والآن

3:01:23

وهنا تصبح الأمور بالغة الأهمية

3:01:25

أصبحنا الآن أقوياء لأننا نستطيع أن نرى بالفعل

3:01:29

كيف يتصرف النظام داخلياً. أوه، هذا

3:01:31

هذا ليس مجرد تخمين. ليس كذلك

3:01:33

هذا مجرد افتراض، ولكنه مجرد ملاحظة هنا.

3:01:39

والآن بعد أن أصبح بإمكاننا تتبع مكالمة LLM،

3:01:41

دعونا نوسع نطاق إمكانية المراقبة إلى أقصى حد

3:01:44

جزء مهم من أي نظام رفوف والذي

3:01:46

هذه طبقة الاسترجاع لأنها هنا

3:01:49

في أنظمة الإنتاج الحقيقية، تحدث معظم حالات الفشل

3:01:52

لا يحدث ذلك على مستوى النموذج. هم

3:01:55

يحدث ذلك قبل أن يرى النموذج حتى

3:01:57

سياق. لذا إذا أردنا الاستمرار

3:01:59

قوة تصحيح الأخطاء أو إذا كنت تريد

3:02:02

قوة تصحيح الأخطاء الحقيقية، يجب علينا بالفعل

3:02:04

استرجاع التتبع.

3:02:07

لذا بدلاً من تقديم هذا السياق

3:02:10

مباشرة ما سنفعله

3:02:12

ما سنفعله هو أننا سنقوم بمحاكاة

3:02:15

عملية الاسترجاع هنا، فماذا عن ذلك؟

3:02:17

سأقوم الآن بتعريف بسيط

3:02:21

كلب الصيد

3:02:24

لدينا الآن استفسار

3:02:27

لهذا السبب أو بشكل أساسي سنحصل على

3:02:29

استعلام المستخدم المقدم، ثم... بما أن

3:02:31

هذه محاكاة، لذا سأقوم فقط بلصقها.

3:02:34

في ثلاث تصريحات هنا، سو لانغ سميث

3:02:37

يُستخدم لـ

3:02:40

تتبع طلبات الحصول على درجة الماجستير في القانون.

3:02:44

وواحد آخر، Langchain هو إطار عمل

3:02:51

لبناء خطوط أنابيب LM.

3:02:55

وواحد آخر...

3:03:01

تجمع أنظمة الرفوف

3:03:05

استرجاع

3:03:07

الاسترجاع والتوليد.

3:03:10

تمام. لذا سنفترض أن هذا هو

3:03:13

محاكاة الاسترجاع.

3:03:16

محاكاة الاسترجاع.

3:03:19

وأخيراً، ما الذي سنفعله بناءً على هذا؟

3:03:21

تتمثل الوظيفة في إرجاع المستندات أو

3:03:24

استرجاع المستندات وفقًا لافتراضنا. الآن

3:03:28

ما يمكننا فعله هو أننا نستطيع تحديد هذا

3:03:31

دالة تسمى استرجاع.

3:03:35

الاسترجاع ببساطة يتم تمرير الاستعلام

3:03:38

ومن هنا يمكننا الحصول على النتائج عن طريق

3:03:41

يُطلق على هذا الاسترجاع البسيط اسم

3:03:44

الدالة التي نمرر إليها الاستعلام

3:03:46

مرة أخرى، ثم أعد النتائج بشكل أساسي.

3:03:51

نتائج جيدة

3:03:54

الآن ما سأفعله هو أنني سأفعل

3:03:56

لإضافة استيراد آخر هنا، لذا lang

3:04:00

استيراد السلسلة

3:04:03

قابلة للتتبع

3:04:07

معذرةً من لانغميث

3:04:11

مدخلات اللغة قابلة للتتبع

3:04:16

وما سأفعله هنا هو أنني

3:04:20

سأضيف مُزخرفًا قابلًا للتتبع

3:04:27

ثم تقديم خدمة تزيين قابلة للتتبع.

3:04:29

لنسمي هذا حتى يكون الاسم "هيا بنا".

3:04:33

قلها

3:04:34

الحاصدون

3:04:35

خطوة.

3:04:38

والآن سنجري بعض التغييرات على هذا. لذا

3:04:42

سأقوم فقط بتمرير الاستعلام. هيا بنا

3:04:45

انسَ هذه السلسلة في الوقت الحالي. لذا سأفعل ذلك فقط

3:04:48

قم بتمرير الاستعلام. لنفترض أن الاستعلام

3:04:50

هذا ما هو xmith

3:04:52

وبناءً على ذلك. دعونا ننسى هذا مؤقتاً

3:04:55

الآن. لنفترض

3:04:58

استرجاع المستندات يساوي

3:05:03

يسترد

3:05:04

استفسار.

3:05:07

لسنا بصدد الوصول إلى الإجابة النهائية.

3:05:09

نحن نتحقق منه فقط من أجل الاسترجاع

3:05:12

الجزء الخاص بالوثائق هنا. لنفترض أننا نريد استرجاع المستندات.

3:05:16

تمام. بمجرد أن نطبع هذا، ثم...

3:05:18

يمكننا تشغيل هذا بسهولة في نظامنا.

3:05:26

لذا فإن عملية استرجاع المستندات المحاكاة

3:05:30

يجب طباعته

3:05:33

أوه، هنا. تمام. الآن

3:05:37

تم إنجاز هذا. الآن نعود إلى

3:05:39

لغتنا.

3:05:42

الآن إذا نظرت إلى وحدة لانغميث، ستجد

3:05:44

هذا الأثر الجديد يسمى المسترجع

3:05:47

خطوة. وإذا فتحت درج المسترد

3:05:50

ثم يمكنك رؤية الاستعلام الفعلي و

3:05:54

ثم جميع المستندات المسترجعة

3:05:57

وكذلك وقت الاسترجاع هنا أيضاً

3:05:59

أما السمات، فهي مرتبطة بشكل أساسي

3:06:02

إلى عملية الاسترجاع تلك. إذن، هذا مرة أخرى...

3:06:05

خطوة قابلة للتتبع لكلب الصيد هنا.

3:06:10

لذا، لا يرى لانغسميث برنامج الماجستير في القانون فحسب، بل

3:06:13

كما أنها تشهد خطوة الاسترجاع الكاملة،

3:06:16

وهو استعلام الإدخال، والاسترجاع

3:06:18

الوثائق وكذلك التنفيذ

3:06:20

توقيت.

3:06:25

يمكنك أيضًا أن تفعل الشيء نفسه لـ

3:06:27

خطوة إعادة الترتيب الخاصة بك. تذكر، إذا كنت

3:06:30

أضف دالة لإعادة الترتيب، ثم...

3:06:33

كل ما أحتاجه هو إضافة عنصر قابل للتتبع هنا.

3:06:37

تمامًا كما فعلنا في الخطوة السابقة.

3:06:39

وبعد ذلك يمكنك رؤية الصورة الكاملة مرة أخرى

3:06:42

أثر وحدة إعادة الترتيب الخاصة بك.

3:06:46

وبمجرد أن تجمع كل هذه الأشياء...

3:06:48

نموذجك الأساسي يستدعي عملية الاسترجاع

3:06:52

بالإضافة إلى إعادة الترتيب إلى ترتيب كامل

3:06:54

نموذج. لذا الآن، لكل طلب ستقوم

3:06:58

والآن احصل على شجرة التتبع الكاملة. إذن الخطوة الأولى

3:07:01

سيكون ذلك للاسترجاع حيث أنت

3:07:03

سوف يرون استعلام الإدخال أيضًا

3:07:05

استرجاع المستندات. الخطوة الثانية هي

3:07:07

سيكون ذلك لإعادة الترتيب حيثما أمكن

3:07:09

راجع وثيقة إعادة الطلب. الخطوة الثالثة هي

3:07:12

سيكون ذلك من أجل سرعة البناء

3:07:14

حيث يمكنك مشاهدة النسخة النهائية كاملة

3:07:16

السياق المقدم للنموذج. ثم في الداخل

3:07:18

في الخطوة الرابعة، يمكنك رؤية استدعاء lm الذي

3:07:21

المدخل الذي يحتوي على المدخل

3:07:23

الاستجابة أو موجه الإدخال وكذلك

3:07:26

استجابة الإخراج. الآن

3:07:30

في هذا السياق، يصبح تصحيح الأخطاء الخاص بك

3:07:33

تافه

3:07:34

لأنك إذا رأيت بعض الإخفاقات في

3:07:37

ستصلح عملية الاسترجاع

3:07:38

كلب صيد. إذا رأيت أن

3:07:40

إعادة الترتيب خطأ، عليك تصحيح نتائجك.

3:07:44

المنطق كذلك، إذا رأيت أن

3:07:46

الإجابة خاطئة، عليك ببساطة التحقق من إجابتك.

3:07:48

سلوك التوجيه أو سلوك التعلم القائم على التعلم. إذن سيكون هناك

3:07:51

لا تخمين، لا تصحيح أخطاء عشوائي، فقط

3:07:54

رؤية منظمة. إذن المفتاح

3:07:57

خلاصة القول من هذا هي إمكانية المراقبة

3:07:59

يحول نظام الرفوف الخاص بك من صندوق أسود

3:08:01

إلى مسار قابل للشرح خطوة بخطوة.

3:08:05

الآن وقد أصبح لدينا آثار كاملة لـ

3:08:06

الاسترجاع، وإعادة الإيداع، والتوليد،

3:08:09

لنفعل ما يهم حقاً في

3:08:11

أنظمة الإنتاج. لنقم بتصحيح الأخطاء الحقيقية

3:08:13

الفشل بسبب عدم إمكانية المراقبة

3:08:16

مفيد إلى أن يساعدك في الإجابة على سؤال واحد

3:08:18

سؤال. ما الخطأ الذي حدث بالضبط؟ لذا

3:08:20

سنستعرض الآن بعض الأمور الشائعة

3:08:22

إخفاقات الإنتاج وكيفية حدوثها

3:08:24

إن إمكانية المراقبة تكشفهم على الفور.

3:08:26

لنفترض السيناريو الأول حيث

3:08:28

كان استفسار المستخدم هو ما هي شروط الأهلية

3:08:30

معايير الحصول على قرض سكني. لذا ربما

3:08:32

كانت مخرجات النظام غير صحيحة تمامًا

3:08:35

أو إجابة غير مكتملة. لذلك بدون

3:08:37

فيما يتعلق بإمكانية الملاحظة، ستفترض أن

3:08:39

النموذج خاطئ أو أن التعليمات غير صحيحة. لكن

3:08:41

باستخدام أداة التتبع البطيء، ستكتشف أن

3:08:44

استرجاع المستندات يتم بالكامل

3:08:46

لا علاقة لها بالموضوع، وتتحدث الوثيقة عن

3:08:48

بطاقة الائتمان بدلاً من قروض السكن. لذا

3:08:50

ومن هذا يمكنك تحديد الجذر

3:08:52

بسبب فشل نظام الاسترجاع

3:08:54

وليس برنامج الماجستير في القانون. ولإصلاح ذلك أنت

3:08:57

ربما سيعمل على تحسين

3:08:59

تضمينات أو تحسين التجزئة أو

3:09:01

زيادة نتائج المفاتيح الرئيسية أو استخدام

3:09:04

البحث الهجين.

3:09:06

وبالمثل، ضع في اعتبارك سيناريو آخر

3:09:09

حيث كان استعلام المستخدم هو استخدام اللغة في

3:09:12

إنتاج. لذا ربما يكون الاسترجاع

3:09:14

كانت المخرجات صحيحة أو صحيحة

3:09:18

كانت الوثيقة موجودة ولكن بعد إعادة التقييم

3:09:20

تم نقل المستند الصحيح إلى المرتبة الخامسة. لذا

3:09:23

والآن، إليكم أفضل ثلاثة نتائج تم الحصول عليها أو

3:09:26

لم تكن إعادة الترتيب ذات صلة. الآن بدون

3:09:29

فيما يتعلق بإمكانية الملاحظة، ستفترض أن

3:09:31

الاسترجاع جيد. لكن مع أثرك

3:09:33

من الواضح أن الوثيقة الصحيحة

3:09:36

موجود لكن عامل إعادة التدوير دفعه إلى الأسفل.

3:09:38

إذن، كان السبب الجذري هو منطق إعادة الترتيب

3:09:40

كان به عيوب. لذا ربما ستتحسن

3:09:43

نموذج التشفير المتقاطع لإصلاح هذا أو استخدام

3:09:46

إعادة تقييم أقوى أو ضبط تسجيل النقاط

3:09:48

الأوزان. والآن لننتقل إلى الثالث

3:09:51

سيناريو تكمن فيه المشكلة في

3:09:54

أجب عن السؤال حيثما ينقص المفتاح

3:09:57

تفاصيل. الآن قد يُظهر الأثر أن

3:09:59

تم استرجاع المستندات الصحيحة.

3:10:01

تمت إعادة الترتيب بشكل صحيح، لكن الترتيب النهائي

3:10:03

كان السياق طويلاً جداً. لذا فإنّ برنامج الماجستير في القانون (LLM) بسبب

3:10:07

طول السياق أو القيد في

3:10:09

لا يمكن رؤية طول السياق إلا من

3:10:10

سياق جزئي. الآن فهمنا ذلك

3:10:13

كان السبب الرئيسي هو نافذة السياق

3:10:15

تجاوز السعة أو الاقتطاع. والآن لإصلاح ذلك

3:10:18

ربما نستخدم خاصية الاختيار الذكي.

3:10:20

ضغط السياق أو تلخيصه

3:10:22

قبل ظهور الرسالة. وبالمثل، دعونا ننظر إلى

3:10:25

سيناريونا الرابع.

3:10:27

ربما يكون النظام لديه استرجاع صحيح،

3:10:30

إعادة الترتيب الصحيحة أو السياق الصحيح ولكن

3:10:33

كانت الإجابة بتنسيق خاطئ أو

3:10:35

تجاهل السياق تماماً. الآن إذا

3:10:38

تحقق من التتبع ثم رأيت

3:10:41

أن التوجيه لم يتم تنفيذه

3:10:44

التأريض. وهذا يعني السبب الجذري

3:10:47

كان ذلك بسبب سوء تصميم نظام التشغيل. والآن إلى

3:10:49

ربما يمكنك العمل على إصلاح هذا.

3:10:51

تنبيهات نظام أكثر صرامة أو ربما قل

3:10:54

أجب فقط من نوع السياق

3:10:56

إنفاذ القانون أو ربما العمل على بعض

3:10:58

تنسيقات الإخراج المنظمة. والآن لننظر إلى الأمر.

3:11:01

السيناريو الخامس حيث بدا كل شيء

3:11:04

صحيح، لكن النموذج أضاف بعض الإضافات.

3:11:06

معلومات غير موجودة في

3:11:08

سياق. كان يعني أساسًا

3:11:09

الهلوسة. والآن ظهر الأثر

3:11:11

أن عملية الاسترجاع كانت صحيحة،

3:11:13

كانت إعادة الترتيب صحيحة، وكان التوجيه صحيحًا.

3:11:15

صحيح، لكن الرد تضمن

3:11:17

الادعاءات غير المدعومة، مما يعني أنه يمكنك

3:11:19

يسهل تحديد أن النموذج

3:11:21

كانت الهلوسة موضع شك.

3:11:25

ولإصلاح ذلك، ربما عليك تطبيق

3:11:27

أرض صلبة أم أرض أقوى

3:11:30

أو خفض درجة الحرارة أو ربما

3:11:32

أضف فحصًا للدقة أو ربما استخدم

3:11:34

طبقة التقييم.

3:11:38

والآن، تكمن الفكرة الأساسية هنا في أنه بمجرد

3:11:40

لديك إمكانية مراقبة كل فشل

3:11:42

يتوقف عن كونه غامضاً ويصبح

3:11:44

يمكن تفسير ذلك. إذن ما هي التغييرات التي تحدث في

3:11:47

عقلية هندسية ناتجة عن

3:11:48

إمكانية الملاحظة. لذا قبل إمكانية الملاحظة

3:11:50

ربما تفترض أن شيئًا ما هو

3:11:52

خطأ، ولكن بعد إمكانية الملاحظة، ستكون

3:11:54

بالتأكيد أقول إن هذه ربما تكون خطوة الاسترجاع

3:11:57

فشل في الخطوة الأولى أو تراجع في إعادة التقييم

3:12:00

تسبب الإشارة أو المطالبات في عدم التطابق. و

3:12:03

هذا التحول هو ما يميز المبتدئين

3:12:05

من مهندسي الذكاء الاصطناعي في مجال الإنتاج. الآن بعد

3:12:08

يمكننا تتبع وتصحيح كل خطوة من خطواتنا

3:12:10

خط أنابيب الرفوف، يصبح السؤال التالي

3:12:12

بل والأهم من ذلك. كيف نصمم

3:12:15

نظام رفوف مصمم لـ

3:12:16

إمكانية المراقبة منذ البداية؟ لأن

3:12:18

تحديث نظام تصحيح الأخطاء مكلف. لكن

3:12:21

إن بناء المباني من أجل إمكانية المراقبة هو ما

3:12:23

أنظمة الإنتاج تفعل ذلك بالفعل. الآن

3:12:26

لننتقل من تصحيح الأخطاء الموجودة

3:12:28

الأنظمة لشيء أكثر أهمية. كيف

3:12:30

هل نصمم أنظمة رفوف تكون

3:12:32

جاهزية المراقبة من اليوم الأول لأن

3:12:35

في بيئة إنتاج حقيقية

3:12:36

لا تتم إضافة إمكانية المراقبة لاحقاً. إنها

3:12:39

مُدمجة في التصميم المعماري من

3:12:41

بداية. إذن، الفكرة الأساسية هنا هي

3:12:44

بسيط. إذا تعذر تتبع نظام ما، فإنه

3:12:46

ليس جاهزاً للإنتاج. لذا بدلاً من

3:12:48

باعتبار إمكانية المراقبة إضافةً، فإننا

3:12:51

صمم كل مكون بحيث يصدر صوتًا

3:12:54

المعلومات المنظمة. إذن سنتحدث

3:12:56

سنتناول هنا بعض المبادئ. لذا فإن

3:12:58

المبدأ الأول الذي سنتحدث عنه

3:13:00

كل شيء يجب أن يكون خطوة. لذا

3:13:02

في نظام رفوف الإنتاج، كل

3:13:04

ينبغي التعامل مع العملية على أنها

3:13:05

خطوة قابلة للتتبع. يشمل ذلك الاستعلام

3:13:07

الإدخال، والتضمين، والتوليد، والاسترجاع

3:13:09

إعادة التقييم، بناء السياق، التوجيه

3:13:12

إنشاء ودعوة للحصول على درجة الماجستير في القانون. كل من هؤلاء

3:13:14

ينبغي أن تكون الخطوات مستقلة و

3:13:16

قابل للملاحظة. المبدأ الثاني، المنظم

3:13:19

الإخراج عبر السجلات الخام. لذا بدلاً من

3:13:21

نقوم بتفريغ السجلات الخام وتخزينها بشكل منظم

3:13:24

البيانات التي يمكن الاستعلام عنها باستخدام المعرف لاسترداد المستندات

3:13:27

نتائج تشابه المعرفات، إعادة ترتيب النتائج، مطالبة

3:13:30

إصدارات النماذج وما شابه ذلك

3:13:33

وغيرها الكثير. وهذا سيجعل عملية تصحيح الأخطاء أسهل

3:13:36

البحث المنهجي بدلاً من البحث اليدوي.

3:13:38

لذا فإن المعرف الأساسي الثالث هو معرف التتبع لـ

3:13:40

كل طلب. لذا يجب أن يكون كل استعلام من المستخدم

3:13:43

قم بإنشاء معرّف تتبع فريد. هذا سوف

3:13:46

السماح بإعادة تشغيل عملية التنفيذ بالكامل،

3:13:49

الربط والإنتاج عبر الخطوات

3:13:51

تصحيح الأخطاء. بدون معرّفات التتبع،

3:13:53

في الواقع، تنهار إمكانية المراقبة. و

3:13:56

من حيث المبدأ الرابع، قم بإصدار نسخة من كل شيء.

3:13:58

لذا فإن أنظمة رفوف الإنتاج هي

3:14:00

يتغير باستمرار. لذلك يجب علينا دائماً

3:14:02

إصدار نموذج تضمين المسار، التجزئة

3:14:04

نسخة الاستراتيجية، نسخة إعادة التقييم،

3:14:06

نسخة موجهة، نسخة LM لأنه عندما

3:14:09

هناك شيء ما يتعطل، نحتاج أن نعرف ما هو

3:14:10

لقد تغير بالفعل.

3:14:12

في المبدأ الخامس، تخزين وسيط

3:14:15

الولايات. معظم الأنظمة لا تخزن سوى المدخلات

3:14:17

والإخراج ولكن تصحيح أخطاء الإنتاج

3:14:19

يتطلب نتائج استرجاع وسيطة،

3:14:21

إعادة ترتيب المخرجات والسياق النهائي

3:14:23

تم إرسالها إلى برنامج الماجستير في القانون. هذا ما يسمح بـ

3:14:25

تحليل الأسباب الجذرية. في المبدأ السادس،

3:14:28

يجب أن تكون الإخفاقات قابلة للتفسير. لذا كل

3:14:30

ينبغي أن يرتبط الفشل بمرحلة معينة. أيّ

3:14:32

منصة؟ الاسترجاع، والتصنيف، والتوجيه، أو

3:14:34

جيل. إذا لم تتمكن من التصنيف

3:14:36

في حالة الفشل، تصبح إمكانية الملاحظة في الواقع

3:14:38

غير مكتمل. لذا أنت بحاجة إلى هذا المفتاح

3:14:41

تحول معماري. في العقلية القديمة،

3:14:43

كان لدينا فقط نموذج الاستعلام والإجابة. لكن

3:14:45

في عقلية الإنتاج، تحتاج إلى

3:14:47

تضمين الاستعلام واسترجاعه، وهو ما ينبغي أن

3:14:50

أن يكون قابلاً للتتبع. ينبغي أن يكون التصنيف أيضًا

3:14:51

قابل للتتبع. ينبغي لمنشئ السياق أيضًا

3:14:53

أن يكون قابلاً للتتبع. ينبغي على أداة إنشاء الرسائل أيضًا

3:14:55

أن يكون قابلاً للتتبع. ينبغي أن يكون Llm أيضًا

3:14:57

قابل للتتبع. والإجابة بالإضافة إلى التتبع الكامل

3:14:59

سجل. ما يتيحه هذا هو بمجرد أن

3:15:02

صمم الأنظمة بهذه الطريقة، وابدأ عملية تصحيح الأخطاء الآن

3:15:05

يصبح فورياً. يصبح التقييم

3:15:07

تصبح التحسينات التلقائية للنظام

3:15:09

تصبح المشكلات القابلة للقياس والإنتاجية

3:15:11

قابل للتتبع. لذا فإن إمكانية الملاحظة ليست

3:15:14

شيء تضيفه إلى نظام الرفوف. هو - هي

3:15:16

هو شيء تقوم بتضمينه فيها. والآن

3:15:19

أننا نفهم كيفية التصميم

3:15:21

مراقبة النظام، الخطوة التالية

3:15:23

إن توسيع نطاق هذه العقلية إلى الإنتاج

3:15:25

بيئة. لأنه بمجرد أن يكبر النظام،

3:15:27

نحن لا نكتفي بتصحيح الأخطاء فقط. نحن بحاجة إلى

3:15:29

مراقبتها وتحسينها باستمرار

3:15:31

في الوقت الفعلي. والآن لنتحدث عن ماذا

3:15:34

يحدث ذلك عندما يدخل نظامك في

3:15:35

الإنتاج لأن إمكانية الملاحظة ليست

3:15:38

شيء تقوم بإعداده مرة واحدة وتنساه. هو - هي

3:15:40

يصبح شيئًا تستخدمه في كل مرة

3:15:42

يوم. في أنظمة الرفوف الواقعية، الأشياء

3:15:44

لا تبقى مستقراً. تغييرات البيانات، المستخدم

3:15:47

تغيرات السلوك، وأداء النموذج

3:15:49

يتغير ببطء مع مرور الوقت. حتى لو

3:15:51

كل شيء يبدو على ما يرام ظاهرياً،

3:15:53

لا يزال النظام قادراً على التدهور بهدوء.

3:15:55

لهذا السبب تعتبر مراقبة الإنتاج مهمة للغاية

3:15:57

مهم. في نظام الرفوف الحية، نحن

3:15:59

تتبع بعض الأمور الرئيسية باستمرار.

3:16:01

أولاً، صحة الاسترجاع. نحن ننظر

3:16:03

مدى أهمية المستندات المسترجعة

3:16:05

هي في المتوسط. كما نراقب ما إذا

3:16:07

النظام يفتقد باستمرار

3:16:09

معلومات مهمة أم لا. ثم يأتي التالي

3:16:11

استقرار إعادة التصنيف. نتحقق مما إذا كان

3:16:13

يحتل موقع reanker باستمرار المرتبة الأولى.

3:16:15

المستندات الصحيحة في الأعلى ونحن نراقب

3:16:17

لأي تغييرات مفاجئة في التصنيف

3:16:19

السلوك بمرور الوقت. ثم ننظر إلى

3:16:21

إشارات التوليد. نحاول الكشف

3:16:23

أشياء مثل الهلوسة، طويلة للغاية

3:16:25

والإجابات القصيرة للغاية، وما إذا كان

3:16:27

النموذج يستخدم في الواقع الاسترجاع

3:16:29

السياق بشكل صحيح أو غير صحيح. لكن الأهم

3:16:32

المفهوم المهم هنا هو شيء ما

3:16:33

يُسمى الانجراف. الانحراف يعني نظامك

3:16:36

يتغير السلوك ببطء مع مرور الوقت

3:16:39

إذا لم يحدث أي عطل. هناك أنواع مختلفة

3:16:40

أنواع الانجراف. انحراف التضمين حيث

3:16:43

تبدأ جودة الاسترجاع بالتدهور

3:16:44

مع تطور بياناتك. انحراف البيانات حيث

3:16:47

تتغير الوثائق الجديدة عندما...

3:16:50

يقوم النظام باسترجاع البيانات. واستعلام div حيث

3:16:52

بدأ المستخدمون في طرح أنواع مختلفة من الأسئلة

3:16:54

السؤال أكثر من ذي قبل، وهو أمر خطير

3:16:56

جزء من هذا هو أن كل شيء لا يزال يبدو

3:16:58

يبدو أنه يعمل، لكن الجودة

3:17:00

ينخفض ​​ببطء، وإذا لم تكن كذلك

3:17:02

لن تلاحظ ذلك إلا بعد مراقبته

3:17:04

يشتكي المستخدمون، لذلك لا نفعل ذلك في بيئة الإنتاج.

3:17:07

قم بالتقييم بمجرد تشغيلنا بشكل مستمر

3:17:09

يتم إدخال استعلام المستخدم المتكرر إلى النظام

3:17:11

نقوم بمعالجتها، وننشئ سجلاً كاملاً.

3:17:13

نقوم بتقييمها ونقوم بتحديث نظام المراقبة الخاص بنا.

3:17:15

لوحات المعلومات، وهذا يخلق حلقة تغذية راجعة

3:17:18

حلقة توضح لنا كيف يعمل النظام

3:17:20

السلوك بمرور الوقت، والأهم من ذلك

3:17:22

عندما يبدأ بالتدهور عند هذه النقطة

3:17:24

تتغير طريقة تفكيرك تماماً. أنت

3:17:26

لم يعد الأمر يقتصر على بناء نظام رفوف فقط.

3:17:28

أنت تدير نظام ذكاء اصطناعي في

3:17:31

الإنتاج ومرة ​​واحدة وواحدة يجب أن تكون

3:17:34

تمت الملاحظة والقياس والتحسين

3:17:36

بشكل مستمر. وهذه هي الفكرة الأساسية

3:17:39

لأخذها بعيدًا. نظام إنتاج الخرق هو

3:17:42

لا يُحدد بمدى جودة أدائه في

3:17:45

سؤال واحد. يتم تعريفها من خلال كيفية

3:17:47

يؤدي أداءً متسقًا في جميع المجالات

3:17:49

آلاف الاستفسارات من المستخدمين الحقيقيين

3:17:51

وقت. بمجرد أن تفهم ذلك

3:17:54

كل شيء في هندسة الخرق يبدأ بـ

3:17:56

هذا منطقي. هذه هي الفكرة الأساسية

3:17:58

خلف إمكانية المراقبة في أنظمة الرفوف. نحن

3:18:01

بدأ الأمر بمشكلة بسيطة. Eie

3:18:03

تتعطل الأنظمة بصمت، وانتهى بنا الأمر إلى

3:18:05

بناء طريقة كاملة لرؤية الداخل

3:18:07

هم. خطوة بخطوة من الاسترجاع إلى

3:18:10

إعادة ترتيب المطالبات إلى الجيل.

3:18:12

كل شيء يصبح قابلاً للتتبع. كل شئ

3:18:14

يصبح قابلاً للقياس. وبمجرد أن تحصل على

3:18:16

مع انخفاض مستوى الرؤية، يتوقف تصحيح الأخطاء

3:18:18

أصبح الأمر أشبه بالتخمين. يصبح الآن

3:18:20

هندسة. لذا إذا كنت تقوم ببناء رف

3:18:22

الأنظمة، أو وكلاء الذكاء الاصطناعي، أو إنتاج LLM

3:18:25

هذا ليس اختيارياً بالنسبة للتطبيقات

3:18:26

لم يعد الأمر كذلك لأنه بدون إمكانية المراقبة،

3:18:28

أنت ببساطة تمر بسرعة فائقة. في

3:18:30

في الفيديوهات السابقة، قمنا ببناء

3:18:32

نظام رفوف إنتاجي على طراز الوكالة. نحن

3:18:35

تحسين جودة الاسترجاع باستخدام

3:18:37

إعادة الترتيب. لقد تعلمنا كيفية التقييم

3:18:39

أنظمة الرفوف بشكل صحيح. وأضفنا

3:18:42

إمكانية المراقبة حتى نتمكن من التتبع والتصحيح

3:18:44

كل خطوة من خطوات خط الإنتاج. في هذا

3:18:46

من هذه النقطة، يعتقد العديد من المطورين أن

3:18:48

إنها جاهزة للإنتاج. و

3:18:50

من الناحية الفنية، نعم. لكن بعد ذلك

3:18:52

يحدث شيء مثير للاهتمام. ال

3:18:54

النظام يجذب المستخدمين. يصبح عدد قليل من المستخدمين

3:18:57

بضع عشرات. بضع عشرات تصبح بضع

3:19:00

مائة. وبعد فترة وجيزة، يبدأ الناس

3:19:02

طرح الأسئلة طوال اليوم. فجأة،

3:19:05

تظهر مشكلة جديدة تماماً. لا

3:19:07

الدقة، وليس جودة الاسترجاع، وليس

3:19:09

الهلوسة. التكلفة، زمن الاستجابة، و

3:19:12

قابلية التوسع. لأن الحقيقة هي أن

3:19:15

إن بناء نظام رفوف هو في الواقع

3:19:17

الجزء السهل. تشغيله على نطاق واسع هو

3:19:19

الجزء الصعب. قد يبدو استعلام واحد

3:19:21

غير مكلف، ولكن خلف الكواليس

3:19:24

قد يتضمن الاستعلام تضمينات، متجهات

3:19:27

البحث، إعادة الترتيب، الإنشاء الفوري،

3:19:29

ونموذج لغوي كبير لتوليد

3:19:31

آلاف الرموز. والآن اضرب ذلك

3:19:34

بمئات أو آلاف أو حتى ملايين

3:19:36

بناءً على الطلب. ما بدا رخيصاً خلال

3:19:38

يمكن أن يصبح التطوير مكلفًا بسرعة

3:19:41

قيد الإنتاج حالياً. والأمر ليس كذلك فقط

3:19:44

مال. يتوقع المستخدمون استجابات سريعة. هم

3:19:48

لا أريد الانتظار 10 أو 15 ثانية من أجل

3:19:50

إجابة. إذا كان نظامك بطيئًا، فسيواجه المستخدمون

3:19:53

توقف عن استخدامه. إذا كان نظامك

3:19:55

إذا كان مكلفاً، فسينهار نموذج عملك.

3:19:57

وإذا كان نظامك غير قابل للتوسع، فإنه

3:19:59

لا يهم مدى دقتها. و

3:20:01

هذا هو السبب تحديداً وراء استخدام الذكاء الاصطناعي في الإنتاج

3:20:03

تقضي الأنظمة الكثير من الوقت في

3:20:05

تحسين. ليس لأنهم يريدون ذلك،

3:20:07

لكن عليهم فعل ذلك. في هذا الفيديو، نحن

3:20:10

سنستكشف كيف تعمل فرق العالم الحقيقي

3:20:12

يجعل أنظمة الخرق أسرع وأرخص،

3:20:15

أكثر قابلية للتوسع. سنتعلم أين الأكثر

3:20:18

أنظمة الرفوف تُهدر المال. حسنًا

3:20:20

تطبيق أنواع مختلفة من التخزين المؤقت.

3:20:22

سنقلل من استهلاك الرموز. حسنًا

3:20:23

تحسين عملية الاسترجاع. سنناقش النموذج

3:20:26

استراتيجيات التوجيه. وسننظر في

3:20:28

كيف تراقب فرق الإنتاج التكاليف و

3:20:30

الأداء مع ازدياد حركة المرور. بحلول النهاية

3:20:33

من خلال هذا الفيديو، ستفهم أحد

3:20:35

أهم الدروس في الذكاء الاصطناعي

3:20:37

هندسة. الهدف ليس فقط

3:20:39

قم ببناء نظام يعمل. الهدف هو

3:20:42

لبناء نظام يستمر في العمل

3:20:44

بكفاءة عندما يكون هناك آلاف المستخدمين

3:20:45

ابدأ باستخدامه. فلنبدأ بـ

3:20:48

تحديد مكان أنظمة الرفوف فعليًا

3:20:50

يقضون وقتهم وأموالهم، ولماذا ينفق الكثيرون

3:20:53

أصبحت عمليات نشر الإنتاج أكثر بكثير

3:20:55

كانت التكلفة أعلى من تكلفة المطورين في البداية

3:20:57

يتوقع. قبل أن نتمكن من تحسين الرف

3:21:00

النظام، نحتاج أولاً إلى فهمه

3:21:01

أين تأتي التكلفة فعلياً؟

3:21:04

لأن أحد أكبر الأخطاء

3:21:05

يقوم المطور بتحسين ما هو خاطئ

3:21:07

جزء من خط الأنابيب. يقضون أيامًا

3:21:10

محاولة جعل البحث عن المتجهات قليلاً

3:21:12

أسرع مع تجاهل تام لـ

3:21:14

المكون المسؤول عن معظم

3:21:16

من التكلفة. فلنقم بتحليل ما

3:21:18

يحدث ذلك عندما يرسل المستخدم استعلامًا إلى

3:21:20

نظام الإنتاج. يسأل أحد المستخدمين

3:21:23

سؤال. يقوم النظام بإنشاء

3:21:25

تضمين هذا الاستعلام. المتجه

3:21:27

تقوم قاعدة البيانات بإجراء بحث عن التشابه.

3:21:29

يتم استرجاع المستندات ذات الصلة. أ

3:21:31

قد يقوم ريانكر بتقييم وإعادة ترتيب تلك الطلبات

3:21:34

وثائق. السياق الأخير هو

3:21:36

تم بناؤه. ثم نموذج اللغة

3:21:38

يُنتج إجابة. للوهلة الأولى،

3:21:41

تبدو كل خطوة من هذه الخطوات نسبياً

3:21:43

صغيرة، لكنها تشكل معًا المجموع الكلي

3:21:46

تكلفة كل طلب. والآن لنحلل

3:21:49

واحداً تلو الآخر. توليد التضمينات

3:21:51

للبحث المتجهي تكلفة،

3:21:54

إعادة الترتيب لها تكلفة، والتخزين له تكلفة

3:21:56

التكلفة، للمراقبة تكلفة، والتقييم

3:21:59

له تكلفة. لكن في معظم الإنتاج

3:22:01

في النظام، يهيمن مكون واحد

3:22:03

كل شيء آخر، نموذج اللغة. و

3:22:06

غالباً بفارق كبير جداً. كل

3:22:09

الرمز المميز الذي ترسله إلى النموذج يكلف مالاً.

3:22:12

كل رمز مميز يولده النموذج تكلفة

3:22:14

مال. وتتراكم هذه التكاليف

3:22:16

سريع بشكل لا يصدق على نطاق واسع. لنتخيل

3:22:19

مثال بسيط. لنفترض أن نظامك

3:22:22

يسترجع 10 أجزاء. تحتوي كل قطعة على

3:22:24

500 رمز. هذا يعادل 500 رمز بالفعل أو

3:22:29

إلى 10، مما يعني 5000 رمز من

3:22:31

سياق. ثم تضيف نظامك

3:22:34

اِسْتَدْعَى. ثم استعلام المستخدم الخاص بك. ثم

3:22:36

يقوم النموذج بتوليد استجابة وفجأة

3:22:38

قد يتضمن طلب واحد آلاف الطلبات

3:22:40

عدد الرموز وما إذا كان آلاف المستخدمين

3:22:44

يتم تقديم الطلب كل يوم رمز مميز

3:22:46

أصبح الاستهلاك أحد أكبر العوامل

3:22:47

المصاريف التشغيلية في جميع أنحاء البلاد

3:22:50

نظام. لكن استخدام الرموز ليس هو الشيء الوحيد

3:22:53

مشكلة. العديد من أنظمة الرفوف بشكل متكرر

3:22:55

يقومون بنفس العمل تماماً. نفس الشيء

3:22:58

تُطرح الأسئلة مراراً وتكراراً. ال

3:23:00

يتم استرجاع نفس المستندات. نفس الشيء

3:23:03

يتم توليد الإجابات. ومع ذلك

3:23:06

يقوم النظام بإعادة حساب كل شيء من

3:23:08

يخدش في كل مرة. فكر في

3:23:10

هذا للحظة. إذا سأل 100 مستخدم

3:23:13

نفس السؤال، هل نحن بحاجة حقاً إلى الركض؟

3:23:15

100 مكالمة استثمارية مكلفة في سوق الأسهم؟ ربما لا.

3:23:19

وهنا تبدأ عملية التحسين.

3:23:21

ليس بجعل النموذج أكثر ذكاءً، ولكن عن طريق

3:23:24

التخلص من العمل غير الضروري. لأن في

3:23:26

في نظام الإنتاج، غالباً ما تكون الكفاءة

3:23:29

أكثر قيمة من القدرة الخام. و

3:23:32

إحدى أقوى الطرق لـ

3:23:34

يتم التخلص من العمل غير الضروري من خلال

3:23:36

التخزين المؤقت، وهو بالضبط ما نحن بصدده

3:23:38

الخطوة التالية لأن التصميم المناسب

3:23:40

يمكن لاستراتيجية التخزين المؤقت أن تقلل من التكلفة

3:23:43

وزمن الاستجابة بشكل كبير، وغالبًا مع

3:23:46

جهد قليل بشكل مفاجئ. الآن وقد

3:23:48

لنعرف من أين تأتي التكلفة، فلنبدأ

3:23:50

الحديث عن أحد أقوى

3:23:52

تقنيات التحسين في جميع

3:23:54

هندسة البرمجيات، والتي هي التخزين المؤقت.

3:23:56

في الواقع، إذا سألت ذوي الخبرة،

3:23:58

كيف يُسرّع المهندسون عمل الأنظمة؟

3:24:01

إحدى أكثر الإجابات شيوعًا التي ستجدها

3:24:03

الخلاصة: لا تكرر العمل مرتين. و

3:24:05

هذا بالضبط ما يسمح لنا به التخزين المؤقت

3:24:07

يفعل. بدلاً من إعادة الحساب بشكل متكرر

3:24:10

نحصل على النتائج في كل مرة يصل فيها طلب،

3:24:12

قم بتخزين النتائج السابقة وإعادة استخدامها

3:24:14

كلما أمكن ذلك. هذه الفكرة البسيطة

3:24:17

وقد تم استخدامها لعقود في قواعد البيانات والويب

3:24:19

التطبيقات وأنظمة التشغيل و

3:24:21

الأنظمة الموزعة. واتضح

3:24:23

إنه يعمل بشكل جيد للغاية بالنسبة للرفوف

3:24:25

الأنظمة أيضاً. سنبدأ بـ

3:24:27

أبسط أشكال التخزين المؤقت، الاستجابة

3:24:29

التخزين المؤقت. تخيل أن أحد المستخدمين يسأل: "ما هو؟"

3:24:32

"لانغميث؟" يقوم النظام بـ

3:24:34

استرجاع. يقوم النظام بإنشاء موجه.

3:24:36

يقوم نموذج اللغة بإنشاء إجابة

3:24:38

ونرسل تلك الإجابة مرة أخرى إلى

3:24:40

مستخدم. لنفترض الآن أن مستخدمًا آخر يسأل

3:24:43

نفس السؤال بالضبط بعد 10 ثوانٍ.

3:24:46

هل ينبغي علينا إجراء عملية الاسترجاع مرة أخرى؟

3:24:48

هل يجب علينا استدعاء نموذج اللغة مرة أخرى؟

3:24:50

هل ينبغي لنا إنفاق المزيد من الرموز لتوليد

3:24:52

نفس الإجابة؟ في كثير من الحالات،

3:24:54

الجواب هو لا. يمكننا ببساطة إعادة

3:24:57

الرد الذي تم إنشاؤه مسبقًا. ال

3:24:59

والنتيجة فورية تقريباً. والمزيد

3:25:01

والأهم من ذلك، أننا تجنبنا حادثة أخرى.

3:25:04

مكالمة مكلفة للحصول على درجة الماجستير في القانون. لكن التخزين المؤقت للاستجابة

3:25:07

هذه مجرد البداية لأن الدقة

3:25:10

لمطابقة الأسئلة قيود. المستخدمون

3:25:13

نادراً ما تُطرح الأسئلة بنفس الطريقة تماماً

3:25:15

طريق. قد يسأل أحد المستخدمين ما هو

3:25:18

لانغميث؟ قد يسأل مستخدم آخر: "هل يمكن

3:25:20

"هل تشرح لانغميث؟" ومستخدم ثالث

3:25:22

قد يتساءل البعض: "ما هو استخدام لانغميث؟"

3:25:24

هذه الأسئلة مختلفة، ولكن

3:25:26

من الناحية الدلالية، فإنهم يسألون تقريبًا

3:25:29

نفس الشيء. وهذا يقودنا إلى شيء أكثر بكثير

3:25:31

مفهوم قوي، وهو مفهوم دلالي

3:25:33

التخزين المؤقت. بدلاً من التحقق مما إذا كان اثنان

3:25:35

الأسئلة متطابقة، نتحقق من ذلك.

3:25:37

سواء كانت متشابهة في المعنى أو

3:25:39

لا. إذا كان سؤالان كافيين

3:25:41

وبالمثل، قد نتمكن من إعادة استخدام

3:25:44

نفس الإجابة. وهذا بشكل كبير

3:25:46

تقليل كل من التكلفة وزمن الاستجابة في الوقت الفعلي

3:25:48

مشاكل العالم. هناك أنواع أخرى من

3:25:51

التخزين المؤقت أيضًا. على سبيل المثال، التضمين

3:25:53

التخزين المؤقت. إذا كنت قد أنشأت بالفعل

3:25:55

يمكننا تضمين نص معين.

3:25:57

قم بتخزينه وإعادة استخدامه لاحقاً. لا داعي لذلك

3:26:00

قم باستدعاء نموذج التضمين مرة أخرى. بإمكاننا

3:26:02

قم أيضًا بتخزين نتائج الاسترجاع مؤقتًا. إذا

3:26:04

نفس الاستعلام يسترجع نفس النتيجة بشكل متكرر

3:26:06

يمكننا تخزين تلك النتائج في المستندات.

3:26:08

وتجنب عمليات البحث غير الضرورية عن المتجهات.

3:26:10

لاحظ ما يحدث هنا. لسنا

3:26:12

مما يجعل النموذج أسرع. نحن ببساطة

3:26:15

تجنب العمل الذي أنجزناه بالفعل.

3:26:17

وغالباً ما يكون هذا هو المكان الذي يكون فيه الأكبر

3:26:19

تأتي مكاسب الأداء من خلال

3:26:22

ليس بالضرورة أن يكون الطلب الأسرع هو الطلب الأسرع.

3:26:24

أسرع طلب هو الذي

3:26:27

لم يكن من الضروري إعدامه في البداية

3:26:29

مكان. الآن وقد فهمنا

3:26:32

أنواع مختلفة من التخزين المؤقت، لنبدأ

3:26:33

تطبيق أبسط الطرق وأكثرها شيوعاً

3:26:36

أولاً، التخزين المؤقت للاستجابة. وسوف

3:26:38

انظر كم هو سهل البدء في توفير كليهما

3:26:42

الوقت والمال. والآن لننتقل من

3:26:44

من النظرية إلى التطبيق. سنبدأ

3:26:47

باستخدام أبسط استراتيجية للتخزين المؤقت والتي

3:26:49

التخزين المؤقت للاستجابة. الفكرة هي

3:26:51

بكل بساطة. إذا كنا قد فعلنا ذلك بالفعل

3:26:53

بعد الإجابة على سؤال سابق، نقوم بتخزين

3:26:55

إجابة. ثم إذا كان السؤال نفسه

3:26:57

إذا ظهر مرة أخرى، فسنعيد المخزن

3:26:59

أجب بدلاً من أن تجوب كل شيء

3:27:01

خط الأنابيب. فكر فيما نحن عليه

3:27:03

تجنب. لا استرجاع، لا إعادة ترتيب، لا

3:27:06

بناء سريع، وفي معظم

3:27:08

الأهم من ذلك، عدم وجود مكالمة LM، مما يعني

3:27:10

زمن استجابة أقل وتكلفة أقل. فلنبدأ إذن

3:27:14

قم ببنائه. لذا نبدأ بالاستيراد. لذا

3:27:17

من سلسلة اللغة

3:27:20

سنستخدم النموذج أولاً، أو سنستخدمه في المجموعة.

3:27:24

حاول استيراد المكتبة الخاصة بالنموذج

3:27:29

مجموعة دردشة. والآن دعوني أقوم بواحدة أخرى لـ

3:27:32

اِسْتَدْعَى

3:27:39

استيراد نموذج رسالة الدردشة. تمام. لذا

3:27:43

والآن دعوني أشرح برنامج الماجستير في القانون الذي سأحصل عليه

3:27:45

لتكون مجموعة دردشة.

3:27:49

اسم النموذج

3:27:53

يكون

3:27:55

لاما 3.3

3:27:58

70 مليار

3:28:00

نموذج متعدد الاستخدامات.

3:28:05

تمام. لذا سأقوم ببناء... بناء

3:28:08

طلب بسيط للغاية هنا.

3:28:11

يمكننا استخدام نفس الشيء في خرقة القماش الخاصة بنا

3:28:13

التطبيق أيضًا. لكنني سأُظهر

3:28:15

أنت تستخدم استراتيجية التخزين المؤقت بشكل كبير

3:28:18

مثال بسيط. لذا كن سريعًا

3:28:22

يساوي

3:28:24

نموذج موجه المحادثة. حسناً، ينبغي ذلك

3:28:26

تم استخدام قالب موجه المحادثة.

3:28:31

لذا

3:28:33

قالب Chatprom dot من القالب.

3:28:38

دعني أدخل سلسلة نصية متعددة الأسطر هنا.

3:28:42

وسيكون موضوعي هو

3:28:46

أجب عن

3:28:48

التالي

3:28:53

سؤال

3:28:55

وسأمرر سؤالي

3:29:01

نموذج عنصر نائب للسؤال

3:29:05

وهذا كل شيء. تمام. إذن هذا سيسير

3:29:08

ليكون ذلك بمثابة تذكير لي.

3:29:10

دعني أعيد تنظيم هذا.

3:29:18

والآن دعوني أشرح مفهوم السلسلة. لذا سلسلتي

3:29:21

سيحتوي على موجه بالإضافة إلى واحد

3:29:25

اتصل بي.

3:29:28

تمام. لذا سنستخدم شيئًا ما لـ

3:29:33

الرد على الصندوق. دعني أفعل ذلك [يضحك ساخرًا]

3:29:36

وحدة تخزين بيانات بسيطة للغاية لـ

3:29:41

طاقم الرد.

3:29:44

لذا سيتم استخدام هذا كردنا

3:29:46

يقذف. والآن دعني أعرّف دالة لـ

3:29:50

سأحصل على إجابة حيث سأمررها في الممر

3:29:53

في سؤالي على شكل سلسلة نصية.

3:29:57

لذا بدلاً من الاتصال مباشرة بـ LLM

3:30:00

أو عن طريق استدعاء هذه السلسلة مباشرة، ماذا

3:30:02

سأقوم فقط بالتحقق مما إذا

3:30:04

سؤالي موجود في ذاكرة التخزين المؤقت للردود

3:30:08

أو لا. أما إذا كان موجودًا في

3:30:12

سأقول حينها: ذاكرة التخزين المؤقت للاستجابة

3:30:14

قم بتخزينه مؤقتًا

3:30:17

وسأردّ بالرد

3:30:21

مخبأ

3:30:23

وهو ما يتوافق مع ما قدمته

3:30:26

سؤال.

3:30:29

وإلا فسأضطر إلى اللجوء إلى جديد

3:30:32

اتصل ببرنامج الماجستير في القانون لأن هذا السؤال لم يُطرح من قبل

3:30:34

وقد سُئل هذا السؤال سابقاً.

3:30:38

إذن، الاستجابة تساوي السلسلة

3:30:43

استدعاء سلسلة النقاط.

3:30:47

لذا سأحتاج إلى طرح سؤال هنا.

3:30:51

لذا سأطرح سؤالاً وأسأل

3:30:56

دعوني أطرح السؤال الآن.

3:31:00

تمام.

3:31:04

الآن

3:31:07

ال

3:31:08

الإجابة موجودة بالفعل في

3:31:10

response.content.

3:31:12

لذا سأحاول فصل الإجابة

3:31:15

جزء. وما سأفعله هو أنني

3:31:18

سأضيف هذا إلى ذاكرة التخزين المؤقت للاستجابات لدينا.

3:31:20

سأضيف السؤال كمفتاح و

3:31:24

أجب بالقيمة الصحيحة. ثم أنا

3:31:29

سوف يمرر أو يعيد الإجابة التي

3:31:32

استرجعنا البيانات من llm. الآن يمكننا الاختبار

3:31:35

هذا. لذا، سؤالي الأول هو:

3:31:39

يكون

3:31:43

ما هي سلسلة اللغات؟

3:31:47

تمام.

3:31:49

الآن سأحصل على إجابتي من...

3:31:53

دالة الحصول على الإجابة حيث يمكنني تمريرها

3:31:56

السؤال. ثم يمكنني طباعة

3:31:58

أجب بسهولة.

3:32:01

سأطرح نفس السؤال مرة أخرى

3:32:05

ثم احصل على الإجابة في الإجابة الأولى.

3:32:09

السؤال نفسه في الأساس

3:32:13

ثم دعني أطبع إجابتي الأولى

3:32:16

هنا.

3:32:17

تمام. لذا دعونا نضيف فاصلًا أيضًا.

3:32:20

حتى لا نختلط علينا الأمر، وهو

3:32:23

جزء الإجابة وأيهما الإجابة الأولى

3:32:25

جزء. تمام. إذن، هذا سيكون أنا

3:32:28

فاصل.

3:32:30

والآن دعني أقوم باستدعاء هذا أو تشغيل هذا الكود.

3:32:33

لذا بايثون

3:32:34

response caching.py.

3:32:39

إذا لم تكن هناك أي أخطاء، فهذا

3:32:40

يجب أن يعمل الكود بشكل صحيح. إذن ماذا نفعل؟

3:32:44

ما تم فعله هنا هو تقديم رد

3:32:47

متغير ذاكرة التخزين المؤقت حيث قمنا بتخزين

3:32:51

كل سؤال جديد وما يقابله

3:32:54

أجب على تلك البيانات المحددة

3:32:58

التخزين أعلاه، ثم قبل أن نجيب

3:33:00

أي سؤال أو استفسار قبل إرساله إلى

3:33:03

نتحقق أولاً من ذلك عند الاتصال ببرنامج الماجستير في القانون.

3:33:06

يوجد سؤال محدد في uh

3:33:09

متغير الاستجابة أم لا. إذا كان

3:33:11

ثم قم بعرض ما تم إنشاؤه مسبقًا

3:33:13

يتم عرض الإجابة للمستخدم. وإلا

3:33:17

ثم ننتقل إلى جزء مكالمة LM و

3:33:19

ثم نرسل استفسارنا إلى

3:33:21

يُنتج برنامج LLM إجابةً لـ

3:33:24

السؤال، ومرة ​​أخرى نحفظ ذلك

3:33:27

الإجابة موجودة في ذاكرة التخزين المؤقت للاستجابة نفسها، لذا

3:33:29

أنه يمكن استخدامه في واجهة برمجة التطبيقات التالية

3:33:32

المكالمات. تمام. أعتقد أنني نسيت التحميل

3:33:36

أمي

3:33:39

مفتاح API لأنني أملكه بالفعل في حسابي

3:33:42

ملف البيئة. لذلك عليّ أن أفعل ذلك من أجل

3:33:45

بيئة

3:33:47

يستورد

3:33:48

تحميل البيئة. وأحتاج أساسًا إلى الاتصال

3:33:51

هذه الوظيفة.

3:33:54

دعني الآن أوضح هذا الأمر، ثم

3:33:57

أعد تشغيل هذا.

3:34:07

تمام.

3:34:09

إذا نظرت هنا،

3:34:14

إذا نظرت منذ البداية، فإن

3:34:16

يتم تقديم الطلب الأول من خلال برنامج الماجستير في القانون. لذا

3:34:20

بشكل أساسي، يقوم نموذجنا الخطي المتكامل (LLM) بتوليد استجابة

3:34:25

أه، هذا هو سؤالنا الأول. لذا فإن

3:34:29

يصل الرد إلى هذا الجزء ثم

3:34:31

عندما نطرح السؤال الثاني،

3:34:34

السؤال الثاني لا يتطرق أبداً إلى

3:34:37

يتم إرجاع النموذج بدلاً من الإجابة

3:34:40

التحقق من ذاكرة التخزين المؤقت على الفور. لذا

3:34:44

منذ ذلك الحين تم العثور على إجابة للسؤال

3:34:46

في ذاكرة التخزين المؤقت، لذا لدينا هنا نسخة مخزنة مؤقتًا

3:34:48

السيناريو والإجابة نفسها هي

3:34:52

كرر ذلك مرة أخرى ثم تم تقديمه إلى

3:34:55

مستخدم. إذن ما الذي حدث هنا في الأول من الشهر؟

3:34:59

تم إرسال طلب استفسار المستخدم الخاص بنا إلى LLM

3:35:02

لقد قمنا بتوليد استجابة من هناك

3:35:05

ثم تم تخزين تلك الاستجابة في ذاكرة التخزين المؤقت.

3:35:07

أما الآن، في الطلب الثاني، كان استعلام المستخدم هو

3:35:10

تم التحقق أولاً من ذاكرة التخزين المؤقت، وإذا تم العثور على ذلك

3:35:14

تم توليدها أو تم أخذ الاستجابة

3:35:17

من ذاكرة التخزين المؤقت نفسها دون استدعاء

3:35:19

ماجستير القانون.

3:35:21

لذا يمكنك أن ترى حجم العمل الذي نقوم به

3:35:23

تم استبعادها هنا حتى في أبسط الحالات

3:35:25

مثال. لم يكن نموذج اللغة أبدًا

3:35:27

تم استدعاؤها في استفسارنا الثاني. ومنذ ذلك الحين

3:35:30

عادةً ما تكون مكالمات برنامج ماجستير القانون هي الأغلى ثمناً.

3:35:32

جزء من خط الأنابيب، حتى لو كان مبلغًا نقديًا صغيرًا

3:35:35

يمكن أن ينتج معدل الإصابة نتائج كبيرة

3:35:37

توفير. على سبيل المثال، إذا كان 30% من

3:35:40

إذا تكررت الاستفسارات، يمكنك

3:35:42

قد يؤدي ذلك إلى إلغاء 30% من برنامج الماجستير في القانون الخاص بك

3:35:45

يكلف. إذا تكررت 50% من الحالات، يمكنك التخفيض

3:35:48

تكلفتك إلى النصف. بالطبع، هناك

3:35:51

هناك قيود هنا. هذا لا ينجح إلا عندما

3:35:54

السؤال هو نفسه تماماً. يمين؟

3:35:56

إذا سأل أحد المستخدمين عن ماهية سلسلة اللغة و

3:35:59

سؤال آخر، هل يمكنك شرح سلسلة اللغة؟

3:36:02

إذن، لن تعمل ذاكرة التخزين المؤقت التي قمنا بتنفيذها.

3:36:05

يتعرف عليهم على أنهم متطابقون على الرغم من

3:36:08

إنهم يطلبون نفس الشيء تقريبًا

3:36:09

شيء. وهذا يقودنا إلى أحد

3:36:12

أقوى تقنيات التحسين

3:36:14

تستخدم في أنظمة الذكاء الاصطناعي الحديثة، وهو

3:36:16

التخزين المؤقت الدلالي. بدلاً من المطابقة

3:36:19

سيتطابق النص تمامًا مع المعنى و

3:36:22

وهنا تبدأ الأمور بالتعقيد

3:36:24

مثير للاهتمام حقاً.

3:36:27

والآن دعونا ننتقل بالتخزين المؤقت خطوة أخرى

3:36:29

لأن التخزين المؤقت للمطابقة التامة مفيد

3:36:32

لكن له عيب كبير. مثلي

3:36:34

لا يطرح المستخدمون المذكورون نفس الأسئلة دائمًا

3:36:36

السؤال بنفس الكلمات لأن الإنسان

3:36:39

اللغة مرنة، أليس كذلك؟ نفس الفكرة.

3:36:41

يمكن التعبير عنها بطرق عديدة ومختلفة.

3:36:44

على سبيل المثال، ما هي سلسلة اللغات؟ يشرح

3:36:46

لانغ تشين بالنسبة لي. لماذا يستخدم المطورون

3:36:49

لانجن؟

3:36:50

أخبرني عن لانجن. كل هؤلاء

3:36:52

الأسئلة تختلف عن النص

3:36:54

من منظور ولكن من معنى

3:36:56

من وجهة نظرهم، فهم متشابهون للغاية و

3:36:58

وهنا يأتي دور التخزين المؤقت الدلالي.

3:37:01

بدلاً من تخزين الأسئلة نفسها

3:37:03

كمفتاح ذاكرة تخزين مؤقت، نخزن معناه

3:37:06

والطريقة التي نمثل بها المعنى في الذكاء الاصطناعي

3:37:08

يتم ذلك من خلال التضمينات و

3:37:10

تحويل النص إلى أرقام عبر التضمين

3:37:13

التمثيل. أسئلة ذات صلة

3:37:15

تنتج المعاني تضمينات تكون

3:37:16

متقاربة في الفضاء المتجهي. لذا فإن

3:37:19

تغيرت آلية العمل الآن. كلما ظهر جديد

3:37:22

عند وصول الاستعلام، نقوم أولاً بإنشاء

3:37:24

تضمين هذا الاستعلام. ثم نحن

3:37:26

قارنها بالبيانات المخزنة مسبقًا

3:37:29

تضمينات الاستعلام. إذا وجدنا شيئًا مشابهًا

3:37:31

يكفي الاستعلام، سنعيد استخدام إجابة ذاكرة التخزين المؤقت.

3:37:35

وإلا، فسنواصل العمل كالمعتاد

3:37:37

خط أنابيب الرفوف. وهذا يخلق الآن الكثير

3:37:40

ذاكرة تخزين مؤقتة أفضل وأكثر ذكاءً بكثير لأنها

3:37:42

الآن يفهم النظام التشابه

3:37:46

ليس مجرد نص متطابق.

3:37:50

ثم لنقم بتطبيق دلالات بسيطة

3:37:53

مخبأ. سنستخدم نظام لانجين البيئي

3:37:56

مع تضمينات الوجه التي تستحوذ على البيانات. الفكرة

3:37:58

هنا يتم تخزين السؤال السابق

3:38:01

وقد تم توليد الإجابة من خلال تضمينات البيانات.

3:38:03

قارن الأسئلة الجديدة بالأسئلة المخزنة

3:38:06

التضمينات. فلنبدأ بالبرنامج

3:38:08

جزء هنا. من langchain_hoggingface

3:38:14

سنقوم بالاستيراد

3:38:16

احتكار تضمينات الوجه. ثم من

3:38:20

sklearn

3:38:22

حسنًا، ربما، حسنًا، لديّ سكارن

3:38:24

هنا. لذلك skarn نقطية dotpairwise

3:38:29

سأقوم بالاستيراد

3:38:33

تشابه الإشارة الجيبية

3:38:35

وهو أمر مفيد لمقارنة منتجاتنا

3:38:38

تضمين المتجهات. لذا دعوني أحدد نفسي

3:38:40

نموذج التضمين هنا. لذا فإن التضمينات

3:38:43

هذا يساوي سيأتي من

3:38:44

تضمينات وجه هوغينغ والنموذج

3:38:46

اسم

3:38:48

يرجى توخي الحذر عند استخدام هذا الاسم. لذا

3:38:51

هذه جملة

3:38:54

محولات

3:38:56

الجميع

3:38:57

ميني إل إم

3:39:01

L6

3:39:03

الإصدار الثاني. تمام. لذا قد أضطر إلى التثبيت

3:39:07

مكتبة تحويل الجمل هذه موجودة هنا.

3:39:10

لذا دعني أفعل ذلك بسرعة. إذن يا بيب

3:39:12

ثَبَّتَ

3:39:14

مُحَوِّلات الجمل.

3:39:19

ربما تم تثبيت هذا بالفعل

3:39:21

أو قد نضطر إلى تثبيته مرة أخرى.

3:39:22

لنرى. حسنًا، إذن الشرط هو

3:39:25

أنا راضٍ تقريباً. أعتقد ذلك

3:39:27

لقد قمنا بالفعل بتثبيت هذا في

3:39:30

بيئة افتراضية. والآن دعوني أعرّف أ

3:39:34

تخزين ذاكرة التخزين المؤقت الدلالي

3:39:37

وسأعرّف هذا ببساطة

3:39:39

قائمة.

3:39:41

تمام. والآن لتخزين ذاكرة التخزين المؤقت، ما أنا

3:39:44

سأقوم بتعريف

3:39:47

دالة تسمى تخزين ذاكرة التخزين المؤقت حيث سأقوم

3:39:50

إذا كان لديك سؤال، فسأجيبك.

3:39:53

أولاً وقبل كل شيء، ما سأفعله هو

3:39:55

سأقوم بتحويل سؤالي إلى

3:39:58

التضمين. إذن، تضمين السؤال يساوي

3:40:00

إلى التضمينات. استعلام التضمين

3:40:04

وبعد ذلك سأقوم بتضمين سؤالي.

3:40:07

سأضيف هذا الآن إلى قائمتي

3:40:10

ذاكرة التخزين المؤقت الدلالية

3:40:15

دلالي. حسناً، هذا دلالي.

3:40:22

إلحاق نقطة بذاكرة التخزين المؤقت الدلالية

3:40:26

وسأضيف بعضًا من هذا داخل هذا

3:40:29

حدود. سأضيف أولاً...

3:40:30

سؤال

3:40:32

وهذا هو سؤالي.

3:40:35

ثانيًا، سأضيف خاصية التضمين.

3:40:38

سيكون هذا هو تضمين سؤالي.

3:40:42

وثالثًا، سأضيف في

3:40:44

إجابة.

3:40:47

ثم هذا سوف

3:40:50

يحتوي على قيمة الإجابة.

3:40:55

تمام. والآن بعد أن تم تضميننا

3:40:58

مخزنة، لذا دعني أعرّف أخرى

3:41:00

الوظيفة التي نبحث فيها في ذاكرة التخزين المؤقت لدينا. لذا

3:41:03

دعني أختصر هذا قليلاً ثم...

3:41:08

سأكتب دالة جديدة

3:41:10

للبحث في ذاكرة التخزين المؤقت لدينا. لذا، من المؤكد أن البحث عن ذاكرة التخزين المؤقت سيُحدث فرقًا كبيرًا.

3:41:15

سأطرح هنا سؤالاً، ثم

3:41:17

بما أن اللغة ستكون

3:41:21

مختلف حتى من الناحية الدلالية

3:41:23

سؤال مشابه. لذا سأقوم بتعريف

3:41:25

العتبة هنا. فلنحتفظ بـ

3:41:27

العتبة عند حوالي 85% وهي 0.85.

3:41:33

الآن ما سأفعله هو أنني سأذهب

3:41:36

للبحث في ذاكرة التخزين المؤقت الدلالية.

3:41:41

إذا لم تكن ذاكرة التخزين المؤقت الدلالية موجودة

3:41:46

إذن لن أرد شيئاً.

3:41:51

لكن إذا كانت ذاكرة التخزين المؤقت الدلالية موجودة،

3:41:54

سأقوم بتضمين الاستعلام

3:41:57

ثم قم بتحويل استفساري إلى

3:42:06

التضمين باستخدام نموذج التضمين.

3:42:09

سأبحث الآن في

3:42:12

ذاكرة تخزين مؤقتة دلالية لسؤال مشابه.

3:42:16

لذا، للعثور على سؤال مشابه مرة أخرى،

3:42:20

سنستخدم درجة وهي

3:42:22

درجة تشابه جيب التمام

3:42:25

وهذه هي درجة تشابه جيب التمام

3:42:27

سأقوم بمقارنة ما يلي. إنها

3:42:29

سأقوم بمقارنة تضمين الاستعلام.

3:42:35

سيتم مقارنة العنصر

3:42:39

التضمين

3:42:44

وسأفعل ذلك فقط

3:42:47

قم بتحليل النتيجة. لذا دعني أفعل ذلك فقط

3:42:50

صفر ثم صفر، استخرج فقط

3:42:53

تشابه جيب التمام. إذا صادفنا أي

3:42:56

إذا كانت هناك أخطاء، فسوف نقوم بتصحيح هذا.

3:42:59

الآن بما أن هذه القيمة المحددة توفر

3:43:02

أريد درجة أو درجة عتبة.

3:43:04

سأقارنها بما حددته

3:43:07

عتبة. إذا كان هذا أكبر من أو

3:43:09

إذا كان يساوي عتبة 85% فسأفعل

3:43:12

يفعل

3:43:14

دلالي

3:43:16

نقدي.

3:43:20

حسناً، سأعيدها

3:43:24

الإجابة المناسبة.

3:43:29

أو إذا لم أجد شيئاً فسأفعل

3:43:32

لن أرد شيئاً ببساطة

3:43:34

هنا.

3:43:37

تمام.

3:43:40

هذا الأمر قد انتهى تقريباً. الآن سنذهب

3:43:44

لدمج هذا في نظام الرفوف الخاص بنا.

3:43:48

والآن دعونا نحدد ما فعلناه

3:43:50

سابقًا. لذا سنحتاج

3:43:53

جميع هذه النماذج. هيا بنا إذن

3:43:57

استخدمه في التخزين المؤقت الدلالي.

3:44:00

سنحتاج إلى كل شيء. سوف نفعل أيضًا

3:44:02

نحتاج إلى تعريفنا الخاص ببرنامج الماجستير في القانون (LLM) بالإضافة إلى

3:44:06

والمطالبة والسلسلة أيضًا. فلنبدأ إذن

3:44:09

استخدم كل شيء

3:44:11

من lm إلى uh جزء السلسلة.

3:44:16

لذا سأقوم بلصقها هنا.

3:44:19

إذن لدينا اسم النموذج، وموجهنا هو

3:44:21

وكذلك السلسلة هنا. الآن، ما أنا عليه

3:44:26

سأفعل ما يلي:

3:44:29

هراء دلالي

3:44:31

الجزء الدلالي هنا. فلنحدد

3:44:34

دالة

3:44:36

لـ semantic rag.

3:44:39

سأمتنع عن طرح السؤال.

3:44:44

لذا سيبحث هذا بشكل أساسي عن الممثلين

3:44:49

إجابة مبنية على البحث

3:44:52

وظيفة البحث في السؤال

3:44:56

هذه الوظيفة تحديداً و

3:44:59

إذا لم يكن لدينا ذاكرة تخزين مؤقتة دلالية، فسوف

3:45:01

لا تُرجع أي قيمة، ثم انتقل إلى تضمين ذلك

3:45:04

سؤال محدد هنا ثم إذا كان

3:45:06

يعثر على أي شيء في ذاكرة التخزين المؤقت الدلالية التي

3:45:10

متشابهة إلى حد ما، بناءً على

3:45:12

ثم عتبة السؤال المطروح

3:45:14

سيعيد إجابته، وإلا...

3:45:18

لن يتم إرجاع أي شيء. لذا إذا حصلنا

3:45:22

شيء من تلك الوظيفة التي هي

3:45:25

إجابة مخزنة مؤقتًا

3:45:27

ثم نقوم ببساطة بإرجاع الإجابة المخزنة مؤقتًا

3:45:32

أو إذا لم نحصل على شيء، فعلينا أن نذهب و

3:45:35

ثم نقوم بتشغيل خط أنابيب برنامج الماجستير في القانون، مما يعني أننا

3:45:38

لا يوجد لديك هذا التمويه للتخزين المؤقت

3:45:43

أوه

3:45:45

تم تزويدنا بها الآن. لذا لهذا السبب

3:45:48

ما سأفعله هو أنني سأركض

3:45:49

سلسلتي. لذا سأقوم باستدعاء هذا

3:45:52

سلسلة مبنية على سؤال أنا

3:45:56

سأقوم بتوفير ذلك. إذن السؤال

3:45:59

هذا هو السؤال

3:46:01

متغيرة وبالمثل

3:46:05

يمكنني استخلاص الإجابة من هنا

3:46:08

وهو response.content.

3:46:11

تمام. وبعد ذلك، بمجرد الانتهاء من هذا

3:46:15

يمكننا تخزين هذه الذاكرة المؤقتة باستخدام المتجر

3:46:18

دالة التخزين المؤقت التي أحتاج إلى تمريرها

3:46:20

السؤال وكذلك الإجابة و

3:46:23

أساسًا

3:46:25

أعد طرح السؤال من هنا.

3:46:28

الآن، ما عليّ فعله هو أنني بحاجة إلى

3:46:30

قم باستدعاء هذه الدالة. فلنذهب إلى

3:46:32

تخزين الاستجابة مؤقتًا

3:46:34

ثم، باختصار، ما هو اللغة؟

3:46:38

سلسلة؟

3:46:43

ما هي سلسلة اللغة؟

3:46:46

دعني أحصل على إجابتي من

3:46:50

إجابة.

3:46:52

عذراً، كان من المفترض أن يكون هذا ردّاً على الرسالة وليس ردّاً عليها.

3:46:56

سؤال العودة.

3:46:58

لذا ينبغي أن يكون هذا هراءً دلاليًا

3:47:02

يتصل

3:47:04

ليس ذاكرة تخزين مؤقتة دلالية، استدعاء رف دلالي

3:47:06

مع السؤال

3:47:10

حسنًا، سأقوم بطباعة الإجابة

3:47:12

هنا. دعني أطبع

3:47:15

إجابة.

3:47:18

دعني أضيف فاصلاً

3:47:22

مع فاصل سطر مزدوج ثم تغيير

3:47:24

في سؤالي واسأل

3:47:27

اشرح لي سلسلة اللغة.

3:47:32

ثم سأمر.

3:47:38

ثم سأعيد طرح السؤال

3:47:42

أو السؤال الجديد الموجه إلى علم الدلالة

3:47:45

وظيفة

3:47:48

سأطرح السؤال ثم سأطبعه في

3:47:52

أجب هنا. إذن، ما الذي ينبغي فعله بشكل أساسي؟

3:47:54

ما يحدث هنا هو أننا لا نعرف ما هو

3:47:58

أوجه التشابه بين هذين السؤالين

3:48:00

سيكون الأمر كذلك، لكنني آمل أن يكون كذلك.

3:48:02

ستكون النسبة أكبر من 85%، لكننا سنتحقق من ذلك.

3:48:07

أخرجه، ثم إذا كان هذا الأمر بالذات

3:48:11

السؤال يستدعي النموذج ثم

3:48:16

إذن، اكتملت عملية التخزين المؤقت الدلالي لدينا.

3:48:18

ينبغي أن يكون هذا السؤال تحديداً

3:48:20

تم حل المشكلة من جزء التخزين المؤقت الدلالي هذا

3:48:23

وهذا يعني أنه لا ينبغي أن يكون النموذج

3:48:24

مُسَمًّى. تمام. على أي حال، سنجربه

3:48:27

باستخدام جهازنا الطرفي. إذن، لنذهب إلى

3:48:30

محطة طرفية جديدة. لدي بالفعل

3:48:32

الطرفية المفتوحة سابقاً. سأذهب فقط

3:48:33

لاستخدامه هنا. دعني أوضح هذا الأمر. يترك

3:48:36

سأحفظ الكود الخاص بي ثم أقوم بتشغيل بايثون

3:48:39

semantic matching.py. هل قمت بطباعة

3:48:42

الإجابة الأخيرة؟ حسناً، لقد فعلت. لذا، يمكنني

3:48:44

قم بتشغيل هذا.

3:48:51

تمام. حسناً، سأتوقف عن هذا الآن.

More transcripts

Explore other videos transcribed with YouTLDR.

Get the TLDR of any YouTube video

Transcribe, summarize, and repurpose videos in 125+ languages — free, no signup required.

Try YouTLDR Free