تخزين وتقديم مطالبات نموذج اللغة
تساعدك prompt-serve على إدارة جميع مطالبات نموذج اللغة الكبير (LLM) والإعدادات/البيانات الوصفية المرتبطة بها بطريقة تسيطر عليها الإصدار.
يوفر هذا المشروع مخطط YAML لتخزين المطالبات بطريقة منظمة وخادم API صغير يتولى التفاعلات مع مستودع GIT ، بحيث يمكنك معالجة المطالبات مثل الشفرة القابلة لإعادة الاستخدام.
مطالبات اتباع المخطط المقدم في schema.yml.
تحقق من مستودع المطالبات لرؤيته في العمل.
title : prompt-title-or-name
uuid : prompt-uuid
description : prompt-description
category : prompt-category
provider : model-provider
model : model-name
model_settings :
temperature : 0.8
top_k : 40
top_p : 0.9
prompt : prompt-text
input_variables :
- var1
- var2
references :
- https://example.com
- https://example.com
associations :
- prompt_uuid
- prompt_uuid
packs :
- pack-uuid
- pack-uuid
tags :
- tag
- tag يمكنك استخدام الأداة المساعدة Valiated.py للتحقق من مطالبات تلبية المخطط ولديها uuids فريدة من نوعها.
من خلال تحديد وسيطة --create ، سيتم توفير UUID جديد إذا لم تكن موجه معين فريدًا لمجموعة الممسوحة ضوئيًا. يمكنك أيضًا جمع إحصائيات حول أنواع المطالبات في مجموعتك عن طريق تمرير- --gen-stats (انظر القسم التالي على سبيل المثال إخراج الإحصائيات).
usage: validate.py [-h] [-s SCHEMA] [-f FILE] [-d DIRECTORY] [-c] [-g]
Validate YAML files against the prompt-serve schema.
options:
-h, --help show this help message and exit
-s SCHEMA, --schema SCHEMA
schema file to validate against
-f FILE, --file FILE single file to validate
-d DIRECTORY, --directory DIRECTORY
directory to validate
-c, --create create new uuids if validation fails
-g, --gen-stats generate statistics from directory
مثال الإخراج

يمكن استخدام أداة التحكم في المحتوى لمسح دليل مستودع الخدمة الموجه وعرض الإحصائيات حول جميع المطالبات في المجموعة ، بما في ذلك المعلومات المتعلقة بالفئة والمزود والنموذج والعلامات.
يمكن أيضًا جمع الإحصائيات اختياريًا عند تشغيل Validate.py.
مثال الإخراج

يمكن تحويل ملفات الخدمة المطالبة بسهولة إلى قوالب موجه Langchain.
يمكن لأداة التحكم في المحتوى تحويل الملفات الفردية لخدمة المقدمة إلى تنسيق Langchain.
مثال الإخراج

بيثون
import yaml
from langhain import PromptTemplate
def convert ( path_to_ps_prompt ):
with open ( path_to_ps_prompt , 'r' ) as fp :
data = yaml . safe_load ( fp )
prompt = data [ 'prompt' ]
if 'input_vars' in data . keys ():
input_vars = data [ 'input_vars' ]
langchain_template = PromptTemplate ( template = prompt , input_variables = input_vars )
else :
langchain_template = PromptTemplate ( template = prompt , input_variables = [])
return langchain_template يمكن استخدام أداة التحكم في المحتوى لإنشاء مطالبة مع مخطط الخدمة المطالبية بشكل تفاعلي.
؟ هذا مجرد دليل على المفهوم ولديه بعض الأخطاء المعروفة. من الأفضل أن تخدمها إنشاءها بمفردك في الوقت الحالي.
$ python create.py -n summary.yml
creating prompt file summary.yml ...
title (str): Summarize blog posts
description (str): Summarize a blog post with key takeaways
category (str): summarization
provider (str) : openai
model (str) : gpt-3.5-turbo
temperature (float) : 0.8
top_k (int) :
top_p (float) : 0.9
max_tokens (int) : 512
stream (bool) : false
presence_penalty (float) :
frequency_penalty (float) :
prompt (str): Summarize the blog post provided below with 3-5 key takeaways as bullet points: {blog_content}
references (seq) : https://github.com/deadbits/prompt-serve
associations (seq) :
packs (seq) :
tags (seq) :
successfully wrote file summary.yml