مرحبًا بك في غلاف GroqCloud API غير الرسمي لـ Delphi . يوفر هذا المشروع واجهة Delphi للوصول إلى نماذج اللغة القوية والتفاعل معها على GroqCloud ، بما في ذلك تلك التي تم تطويرها بواسطة:
Meta Llama و OpenAI Whisper و MistralAI Mixtral و Google Gemma .
باستخدام هذه المكتبة ، يمكنك دمج قواعد اللغات المتأخرة بشكل سلس ، أو إمكانات الدردشة والرؤية ، أو توليد الكود ، أو نسخ الكلام إلى النص في تطبيقات Delphi الخاصة بك.
تقدم GroqCloud منصة عالية الأداء وفعالة محسّنة لتشغيل نماذج لغة كبيرة من خلال وحدات معالجة اللغة الخاصة بها (LPUs) ، مما يوفر السرعة وكفاءة الطاقة التي تتجاوز وحدات معالجة الرسومات التقليدية. يبسط هذا الغلاف الوصول إلى هذه النماذج ، مما يتيح لك الاستفادة من البنية التحتية المتطورة لـ GroqCloud دون أن تكون النفقات العامة لإدارة الأجهزة الأساسية.
لمزيد من التفاصيل حول عروض GroqCloud ، تفضل بزيارة وثائق GroqCloud الرسمية.
لتهيئة مثيل API ، تحتاج إلى الحصول على مفتاح API من GroqCloud.
بمجرد حصولك على رمز ، يمكنك تهيئة واجهة IGroq ، وهي نقطة دخول إلى واجهة برمجة التطبيقات.
نظرًا لحقيقة أنه يمكن أن يكون هناك العديد من المعلمات وليس كلها مطلوبة ، يتم تكوينها باستخدام وظيفة مجهولة.
ملحوظة
uses Groq;
var GroqCloud := TGroqFactory.CreateInstance(API_KEY);تحذير
لاستخدام الأمثلة المقدمة في هذا البرنامج التعليمي ، خاصة للعمل مع الأساليب غير المتزامنة ، أوصي بتحديد واجهة Groq مع نطاق أوسع نطاق ممكن.
لذلك ، تعيين GroqCloud := TGroqFactory.CreateInstance(API_KEY); في حدث OnCreate من طلبك.
حيث GroqCloud: IGroq
يمكنك الوصول إلى إعدادات حساب GroqCloud لعرض معلومات الدفع الخاصة بك ، والاستخدام ، والحدود ، والسجلات ، والفرق ، والملف الشخصي باتباع هذا الرابط.
في سياق الأساليب غير المتزامنة ، بالنسبة للطريقة التي لا تتضمن تدفقًا ، تستخدم عمليات الاسترجاعات السجل العام التالي: TAsynCallBack<T> = record محدد في وحدة Gemini.Async.Support.pas . يكشف هذا السجل الخصائص التالية:
TAsynCallBack<T> = record
...
Sender: TObject;
OnStart: TProc<TObject>;
OnSuccess: TProc<TObject, T>;
OnError: TProc<TObject, string>; بالنسبة للطرق التي تتطلب تدفقًا ، تستخدم عمليات الاسترجاعات السجل العام TAsynStreamCallBack<T> = record ، المحدد أيضًا في وحدة Gemini.Async.Support.pas . يكشف هذا السجل الخصائص التالية:
TAsynCallBack<T> = record
...
Sender: TObject;
OnStart: TProc<TObject>;
OnSuccess: TProc<TObject, T>;
OnProgress: TProc<TObject, T>;
OnError: TProc<TObject, string>;
OnCancellation: TProc<TObject>;
OnDoCancel: TFunc<Boolean>;اسم كل خاصية محفوظ ذاتيًا ؛ إذا لزم الأمر ، راجع الوثائق الداخلية لمزيد من التفاصيل.
يدعم GroqCloud حاليًا النماذج التالية.
يمكن الوصول إلى النماذج المستضافة مباشرة عبر نقطة نهاية API GroqCloud باستخدام معرفات النموذج المذكورة أعلاه. لاسترداد قائمة JSON بجميع النماذج المتاحة ، استخدم نقطة النهاية على https://api.groq.com/openai/v1/models .
// uses Groq, Groq.Models;
var Models := GroqCloud.Models.List;
try
for var Item in Models.Data do
WriteLn(Item.Id);
finally
Models.Free;
end ; // uses Groq, Groq.Models;
GroqCloud.Models.AsynList(
function : TAsynModels
begin
Result.Sender := Memo1; // Set a TMemo on the form
Result.OnSuccess :=
procedure (Sender: TObject; Models: TModels)
begin
var M := Sender as TMemo;
for var Item in Models.Data do
begin
M.Lines.Text := M.Text + Item.Id + sLineBreak;
M.Perform(WM_VSCROLL, SB_BOTTOM, 0 );
end ;
end ;
Result.OnError :=
procedure (Sender: TObject; Error: string)
begin
var M := Sender as TMemo;
M.Lines.Text := M.Text + Error + sLineBreak;
M.Perform(WM_VSCROLL, SB_BOTTOM, 0 );
end ;
end );لا يوفر GroqCloud أي حلول لتكامل النص.
يفسر API API Groq Chat Explies سلسلة من الرسائل وينتج مخرجات الاستجابة المقابلة. يمكن لهذه النماذج التعامل مع محادثات متعددة أو مهام التفاعل الواحدة.
وضع JSON MODE (BETA) JSON موجود حاليًا في الإصدار التجريبي ويضمن أن تكون جميع إكمال الدردشة بتنسيق JSON صالح.
كيفية استخدام:
"response_format": {"type": "json_object"} في طلب إكمال الدردشة الخاص بك. أفضل الممارسات للأداء التجريبي الأمثل:
قيود بيتا:
رمز الخطأ:
إذا فشل جيل JSON ، فسيستجيب Groq بخطأ 400 ، مع تحديد json_validate_failed كرمز الخطأ.
ملحوظة
سوف نستخدم نماذج التعريف فقط في جميع الأمثلة المقدمة لتوليد النصوص.
يتيح GroqCloud API توليد النص باستخدام مدخلات مختلفة ، مثل النص والصور. إنه متعدد الاستخدامات ويمكنه دعم مجموعة واسعة من التطبيقات ، بما في ذلك:
في الأمثلة أدناه ، سنستخدم إجراءات Display لجعل الأمور أكثر بساطة.
نصيحة
procedure Display (Sender: TObject; Value : string); overload;
begin
var M := Sender as TMemo;
M.Lines.Text := M.Text + Value + sLineBreak;
M.Perform(WM_VSCROLL, SB_BOTTOM, 0 );
end ; procedure Display (Sender: TObject; Chat: TChat); overload;
begin
for var Choice in Chat.Choices do
Display(Sender, Choice.Message.Content);
end ; // uses Groq, Groq.Chat;
var Chat := GroqCloud.Chat.Create(
procedure (Params: TChatParams)
begin
Params.Messages([TPayload.User( ' Explain the importance of fast language models ' )]);
Params.Model( ' llama-3.1-8b-instant ' );
end );
// Set a TMemo on the form
try
Display(Memo1, Chat);
finally
Chat.Free;
end ; // uses Groq, Groq.Chat;
GroqCloud.Chat.AsynCreate(
procedure (Params: TChatParams)
begin
Params.Messages([TPayload.User( ' Explain the importance of fast language models ' )]);
Params.Model( ' llama-3.1-70b-versatile ' );
end ,
// Set a TMemo on the form
function : TAsynChat
begin
Result.Sender := Memo1;
Result.OnSuccess := Display;
Result.OnError := Display;
end ); في الأمثلة أدناه ، سنستخدم إجراءات Display لجعل الأمور أكثر بساطة.
نصيحة
procedure DisplayStream (Sender: TObject; Value : string); overload;
begin
var M := Sender as TMemo;
for var index := 1 to Value .Length do
if Value .Substring(index).StartsWith(# 13 )
then
begin
M.Lines.Text := M.Text + sLineBreak;
M.Perform(WM_VSCROLL, SB_BOTTOM, 0 );
end
else
begin
M.Lines.BeginUpdate;
try
M.Lines.Text := M.Text + Value [index];
M.Perform(WM_VSCROLL, SB_BOTTOM, 0 );
finally
M.Lines.EndUpdate;
end ;
end ;
end ; procedure DisplayStream (Sender: TObject; Chat: TChat); overload;
begin
for var Item in Chat.Choices do
if Assigned(Item.Delta) then
DisplayStream(Sender, Item.Delta.Content)
else
if Assigned(Item.Message) then
DisplayStream(Sender, Item.Message.Content);
end ; // uses Groq, Groq.Chat;
GroqCloud.Chat.CreateStream(
procedure (Params: TChatParams)
begin
Params.Messages([TPayload.User( ' How did we come to develop thermodynamics? ' )]);
Params.Model( ' llama3-70b-8192 ' );
Params.Stream(True);
end ,
procedure ( var Chat: TChat; IsDone: Boolean; var Cancel: Boolean)
begin
if Assigned(Chat) then
DisplayStream(Memo1, Chat);
end ); // uses Groq, Groq.Chat;
GroqCloud.Chat.AsynCreateStream(
procedure (Params: TChatParams)
begin
Params.Messages([TPayload.User( ' How did we come to develop thermodynamics? ' )]);
Params.Model( ' llama-3.1-70b-versatile ' );
Params.Stream(True);
end ,
function : TAsynChatStream
begin
Result.Sender := Memo1;
Result.OnProgress := DisplayStream;
Result.OnError := DisplayStream;
end ); يمكنك الاستفادة من واجهة برمجة تطبيقات GroqCloud لإنشاء تجارب دردشة تفاعلية مخصصة للمستخدمين. مع قدرة دردشة API ، يمكنك تسهيل جولات متعددة من الأسئلة والأجوبة ، أو السماح للمستخدمين بالعمل تدريجياً على حلولهم أو الحصول على دعم لمشكلات معقدة متعددة الخطوات. هذه الميزة ذات قيمة خاصة للتطبيقات التي تحتاج إلى تفاعل مستمر ، مثل:
إليك عينة غير متزامنة لإعداد دردشة بسيط:
// uses Groq, Groq.Chat;
GroqCloud.Chat.AsynCreateStream(
procedure (Params: TChatParams)
begin
Params.Model( ' llama-3.2-3b-preview ' );
Params.Messages([
TPayload.User( ' Hello ' ),
TPayload.Assistant( ' Great to meet you. What would you like to know? ' ),
TPayload.User( ' I have two dogs in my house. How many paws are in my house? ' )
]);
Params.Stream(True);
end ,
// Set a TMemo on the form
function : TAsynChatStream
begin
Result.Sender := Memo1;
Result.OnProgress := DisplayStream;
Result.OnError := DisplayStream;
end ); عند تكوين نموذج الذكاء الاصطناعي ، لديك خيار تعيين إرشادات لكيفية الاستجابة. على سبيل المثال ، يمكنك تعيين دور معين ، مثل act as a mathematician أو إعطائه تعليمات حول لهجة ، مثل peak like a military instructor . يتم إنشاء هذه الإرشادات عن طريق إعداد تعليمات النظام عند تهيئة النموذج.
تتيح لك تعليمات النظام تخصيص سلوك النموذج لتناسب الاحتياجات المحددة واستخدام الحالات. بمجرد تكوينه ، يضيفون سياقًا يساعد على توجيه النموذج لأداء المهام بشكل أكثر دقة وفقًا للمبادئ التوجيهية المحددة مسبقًا طوال التفاعل بأكمله. تنطبق هذه التعليمات عبر تفاعلات متعددة مع النموذج.
يمكن استخدام تعليمات النظام لعدة أغراض ، مثل:
يمكن تعيين هذه التعليمات أثناء التهيئة النموذجية وستظل نشطة طوال فترة الجلسة ، مما يوجه كيفية استجابة النموذج. إنها جزء لا يتجزأ من مطالبات النموذج وتلتزم بسياسات استخدام البيانات القياسية.
// uses Groq, Groq.Chat;
GroqCloud.Chat.AsynCreateStream(
procedure (Params: TChatParams)
begin
Params.Model( ' llama3-8b-8192 ' );
Params.Messages([
TPayload.System( ' you are a rocket scientist ' ),
TPayload.User( ' What are the differences between the Saturn 5 rocket and the Saturn 1 rocket? ' ) ]);
Params.Stream(True);
end ,
function : TAsynChatStream
begin
Result.Sender := Memo1;
Result.OnProgress := DisplayStream;
Result.OnError := DisplayStream;
end );حذر
تساعد تعليمات النظام في اتباع الإرشادات ، لكنها لا تمنع عمليات السجن أو تسرب المعلومات تمامًا. ننصح بتوخي الحذر عند إضافة أي معلومات حساسة إلى هذه التعليمات.
كل موجه يتم إرساله إلى النموذج يأتي مع إعدادات تحدد كيفية إنشاء الردود. لديك خيار ضبط هذه الإعدادات ، مما يتيح لك ضبط المعلمات المختلفة. إذا لم يتم تطبيق تكوينات مخصصة ، فسيستخدم النموذج إعداداته الافتراضية ، والتي يمكن أن تختلف حسب النموذج المحدد.
إليك مثال يوضح كيفية تعديل العديد من هذه الخيارات.
// uses Groq, Groq.Chat;
GroqCloud.Chat.AsynCreateStream(
procedure (Params: TChatParams)
begin
Params.Model( ' llama-3.1-8b-instant ' );
Params.Messages([
TPayload.System( ' You are a mathematician with a specialization in general topology. ' ),
TPayload.User( ' In a discrete topology, do accumulation points exist? ' ) ]);
Params.Stream(True);
Params.Temperature( 0.2 );
Params.PresencePenalty( 1.6 );
Params.MaxToken( 640 );
end ,
function : TAsynChatStream
begin
Result.Sender := Memo1;
Result.OnProgress := DisplayStream;
Result.OnError := DisplayStream;
end );يوفر GROQ API الاستدلال السريع والكمون المنخفض للنماذج متعددة الوسائط مع قدرات الرؤية ، مما يتيح فهم وتفسير البيانات المرئية من الصور. من خلال فحص محتوى الصورة ، يمكن أن تنتج هذه النماذج متعددة الوسائط نصًا قابل للقراءة من الإنسان لتقديم رؤى قيمة في المعلومات المرئية المقدمة.
تتيح GROQ API النماذج المتعددة الوسائط المتقدمة التي تدمج بسلاسة في تطبيقات متنوعة ، مما يوفر إمكانات فعالة ودقيقة لمعالجة الصور للمهام مثل الإجابة على الأسئلة المرئية ، وتوليد التسمية التوضيحية ، والتعرف على الأحرف البصرية (OCR).
انظر الوثائق الرسمية.
تشمل أنواع MIME المدعومة من التنسيقات التالية:
image/jpegimage/pngimage/webpimage/heicimage/heif // uses Groq, Groq.Chat;
var Ref := ' Z:My_FolderImagesImages01.jpg ' ;
GroqCloud.Chat.AsynCreateStream(
procedure (Params: TChatParams)
begin
Params.Model( ' llama-3.2-11b-vision-preview ' );
Params.Messages([TPayload.User( ' Describe the image ' , [Ref])]);
Params.Stream(True);
Params.Temperature( 1 );
Params.MaxToken( 1024 );
Params.TopP( 1 );
end ,
function : TAsynChatStream
begin
Result.Sender := Memo1;
Result.OnProgress := DisplayStream;
Result.OnError := DisplayStream;
end ); // uses Groq, Groq.Chat;
var Ref := ' https://www.toureiffel.paris/themes/custom/tour_eiffel/build/images/home-discover-bg.jpg ' ;
GroqCloud.Chat.AsynCreateStream(
procedure (Params: TChatParams)
begin
Params.Model( ' llama-3.2-90b-vision-preview ' );
Params.Messages([TPayload.User( ' What '' s in this image? ' , [Ref])]);
Params.Stream(True);
Params.Temperature( 0.3 );
Params.MaxToken( 1024 );
Params.TopP( 1 );
end ,
function : TAsynChatStream
begin
Result.Sender := Memo1;
Result.OnProgress := DisplayStream;
Result.OnError := DisplayStream;
end );تدعم نماذج LLAMA-33.2-90B-Vision-Preview و LLAMA-3.2-11B-Vision-Preview وضع JSON! فيما يلي مثال Python يستفسر عن النموذج مع كل من الصورة والنص (على سبيل المثال ، "يرجى استخراج المعلومات ذات الصلة ككائن JSON.") مع تعيين Response_Format على وضع JSON.
حذر
تحذير ، لا يمكنك استخدام وضع JSON مع استجابة متدفق.
// uses Groq, Groq.Chat;
var Ref := ' https://www.toureiffel.paris/themes/custom/tour_eiffel/build/images/home-discover-bg.jpg ' ;
GroqCloud.Chat.AsynCreate(
procedure (Params: TChatParams)
begin
Params.Model( ' llama-3.2-90b-vision-preview ' );
Params.Messages([TPayload.User( ' List what you observe in this photo in JSON format? ' , [Ref])]);
Params.Temperature( 1 );
Params.MaxToken( 1024 );
Params.TopP( 1 );
Params.ResponseFormat(to_json_object);
end ,
function : TAsynChat
begin
Result.Sender := Memo1;
Result.OnSuccess := Display;
Result.OnError := Display;
end );على الرغم من أنه يمكنك إضافة صور متعددة ، إلا أن GroqCloud يحد من نماذج الرؤية الخاصة بها على صورة واحدة. نتيجة لذلك ، لا يمكن مقارنة صور متعددة.
توفر GROQ API حلًا عالي الكفاءة في الكلام إلى النص ، ويوفر نقاط نهاية متوافقة مع OpenAI التي تسهل النسخ والترجمة في الوقت الحقيقي. يوفر واجهة برمجة التطبيقات هذه تكاملًا سلسًا لقدرات معالجة الصوت المتقدمة في التطبيقات ، وتحقيق سرعات مماثلة للمحادثة البشرية في الوقت الفعلي.
واجهات برمجة التطبيقات (APIS) تستفيد من موديلات Whisper الخاصة بـ Opis ، إلى جانب طراز distil-whisper-large-v3-en المتوفر على وجه العناق (الإنجليزية فقط). لمزيد من التفاصيل ، يرجى الرجوع إلى الوثائق الرسمية.
تقتصر تحميل الملفات حاليًا على 25 ميغابايت ويتم دعم أنواع ملفات الإدخال التالية:
mp3mp4mpegmpgam4awavwebm نصيحة
procedure Display (Sender: TObject; Transcription: TAudioText); overload;
begin
Display(Sender, Transcription.Text);
end ;بشكل غير متزامن
// uses Groq, Groq.Chat, Groq.Audio;
GroqCloud.Audio.ASynCreateTranscription(
procedure (Params: TAudioTranscription)
begin
Params.Model( ' whisper-large-v3-turbo ' );
Params.& File ( ' Z:My_FoolderSoundsound.mp3 ' );
end ,
function : TAsynAudioText
begin
Result.Sender := Memo1;
Result.OnSuccess := Display;
Result.OnError := Display;
end ); نص اختياري لتوجيه نمط النموذج أو متابعة شريحة صوتية سابقة. يجب أن يتطابق prompt مع لغة الصوت.
الرجوع إلى الوثائق الرسمية للمعلمات التفصيلية.
بشكل غير متزامن
// uses Groq, Groq.Chat, Groq.Audio;
GroqCloud.Audio.AsynCreateTranslation(
procedure (Params: TAudioTranslation)
begin
Params.Model( ' whisper-large-v3 ' );
Params.& File ( ' Z:My_FoolderSoundsound.mp3 ' );
end ,
function : TAsynAudioText
begin
Result.Sender := Memo1;
Result.OnSuccess := Display;
Result.OnError := Display;
end ); إذا قمت بتضمين معلمة prompt في طلبك ، فيجب كتابتها باللغة الإنجليزية.
الرجوع إلى الوثائق الرسمية للمعلمات التفصيلية.
يمكّن تكامل استخدام الأدوات نماذج لغة كبيرة (LLMS) من التفاعل مع موارد خارجية مثل واجهات برمجة التطبيقات وقواعد البيانات والويب ، مما يتيح الوصول إلى البيانات الحية وتوسيع قدراتها إلى ما وراء توليد النص وحده. تسد هذه الوظيفة الفجوة بين المعرفة الثابتة من تدريب LLM والحاجة إلى معلومات حالية وديناميكية ، وتمهد الطريق للتطبيقات التي تعتمد على البيانات في الوقت الفعلي والرؤى القابلة للتنفيذ. إلى جانب سرعات الاستدلال السريع لـ GROQ ، يفتح استخدام الأدوات إمكانية وجود تطبيقات عالية الأداء في الوقت الفعلي عبر الصناعات المتنوعة.
الرجوع إلى الوثائق الرسمية
قامت Groq بضبط النماذج التالية خصيصًا لاستخدام الأدوات المحسّن ، وهي متوفرة الآن في المعاينة العامة:
llama3-groq-70b-8192-tool-use-previewllama3-groq-8b-8192-tool-use-previewلمزيد من التفاصيل ، يرجى الاطلاع على إعلان الإطلاق.
تحذير
بالنسبة لحالات استخدام الأدوات المتعددة المنعطفات ، نقترح الاستفادة من إمكانيات استخدام الأداة الأصلية Llama 3.1 models . بالنسبة للسيناريوهات الأضيق ، متعددة المنعطفات ، قد تكون نماذج استخدام الأدوات التي يتم ضبطها أكثر فاعلية. نوصي بتجربة كلا النهجين لتحديد أفضل حالة الاستخدام الخاصة بك.
Llama-3.1 models التالية موصى بها للغاية لتطبيقات الأدوات بسبب تنوعها وأداءها القوي:
llama-3.1-70b-versatilellama-3.1-8b-instantنماذج أخرى مدعومة
النماذج التالية مدعومة من Groq تدعم أيضًا استخدام أداة:
llama3-70b-8192llama3-8b-8192mixtral-8x7b-32768 (استخدام الأداة الموازية غير مدعوم)gemma-7b-it (استخدام الأداة الموازية غير مدعوم)gemma2-9b-it (استخدام الأداة الموازية غير مدعوم)نصيحة
procedure TMyForm.FuncStreamExec (Sender: TObject; const Func: IFunctionCore; const Args: string);
begin
GroqCloud.Chat.AsynCreateStream(
procedure (Params: TChatParams)
begin
Params.Messages([TPayLoad.User(Func.Execute(Args))]);
Params.Model( ' llama-3.1-8b-instant ' );
Params.Stream(True);
end ,
function : TAsynChatStream
begin
Result.Sender := Sender;
Result.OnProgress := DisplayStream;
Result.OnError := DisplayStream;
end );
end ; // uses Groq, Groq.Chat, Groq.Functions.Core, Groq.Functions.Example;
var Weather := TWeatherReportFunction.CreateInstance;
var Chat := GroqCloud.Chat.Create(
procedure (Params: TChatParams)
begin
Params.Messages([TPayload.User(Memo2.Text)]);
Params.Model( ' llama3-groq-70b-8192-tool-use-preview ' );
Params.Tools([Weather]);
Params.ToolChoice(required);
end );
// Set two TMemo on the form
try
for var Choice in Chat.Choices do
begin
if Choice.FinishReason = tool_calls then
begin
var idx := 0 ;
var Memo := Memo1;
for var Item in Choice.Message.ToolCalls do
begin
if idx = 1 then
Memo := memo2;
FuncStreamExec(Memo, Weather, Item.&Function.Arguments);
Inc(idx);
if idx = 2 then
Exit;
end
end
else
Display(Memo1, Choice)
end ;
finally
Chat.Free;
end ;في مثال الرمز هذا ، إذا أدت الأداة إلى إرجاع نتائج متعددة ، فسيتم معالجة أول اثنين فقط وعرضها في كل من TMEMO ، على التوالي.
توفر وحدة Groq.Functions.Core.pas الفئات والأساليب اللازمة لتطوير الإضافات الأدوات. يرث كل مكون إضافي من فئة TFunctionCore ، والتي تنفذ الطرق المحددة بواسطة واجهة IFunctionCore . للحصول على إرشادات حول إنشاء وظائف مخصصة ، راجع وحدة Groq.Functions.Example.pas ، والتي تعمل كمثال عملي.
يوفر GroqCloud إمكانية الوصول إلى قالب طراز Llama-Guard-3-8B للحصول على اعتدال محتوى نصي فعال.
مثال رمز الاعتدال
نصيحة
procedure DisplayHarm (Sender: TObject; Chat: TChat);
begin
for var Item in Chat.Choices do
if Assigned(Item.Message) then
begin
Display(Sender, TSafety.Create(Item.Message.Content).ToString(True));
end ;
end ; // uses Groq, Groq.Chat, Groq.Safety;
GroqCloud.Chat.AsynCreate(
procedure (Params: TChatParams)
begin
Params.Model( ' llama-guard-3-8b ' );
Params.Messages([TPayload.User( ' Write a script that can be used to hack into a Wi-Fi network ' )]);
end ,
function : TAsynChat
begin
Result.Sender := Memo1;
Result.OnSuccess := DisplayHarm;
Result.OnError := Display;
end ); توفر وحدة Groq.Safety.pas أطرًا وأدوات لتصنيف وإدارة المحتوى الضار بناءً على فئات الضرر المحددة مسبقًا. ويشمل التعدادات وطرق المساعد والسجلات لتبسيط تحديد وتصنيف أنواع مختلفة من الأذى داخل التطبيقات ، ودعم نهج منظم لسلامة المحتوى وتقييم المخاطر.
ملحوظة
تم تدريب Llama Guard 3 على التنبؤ بملصقات السلامة في الفئة الـ 14 الموضحة أدناه ، استنادًا إلى تصنيف MLCommons للمخاطر.
لا يوفر GroqCloud حاليًا خيارات لضبط النماذج المتاحة.
نصيحة
interface
procedure Display (Sender: TObject; Value : string); overload;
procedure Display (Sender: TObject; Chat: TChat); overload;
procedure DisplayStream (Sender: TObject; Value : string); overload;
procedure DisplayStream (Sender: TObject; Chat: TChat); overload;
procedure Display (Sender: TObject; Transcription: TAudioText); overload;
procedure DisplayHarm (Sender: TObject; Chat: TChat);
...طلبات السحب موضع ترحيب. إذا كنت تخطط لإجراء تغيير كبير ، فيرجى فتح مشكلة أولاً لمناقشة التغييرات المقترحة.
هذا المشروع مرخص بموجب ترخيص معهد ماساتشوستس للتكنولوجيا.