تنظیم دقیق و استقرار Mistral 7B با Amazon SageMaker JumpStart | خدمات وب آمازون

تنظیم دقیق و استقرار Mistral 7B با Amazon SageMaker JumpStart | خدمات وب آمازون

امروز، ما هیجان زده هستیم که قابلیت تنظیم دقیق مدل Mistral 7B را با استفاده از آن اعلام کنیم Amazon SageMaker JumpStart. اکنون می توانید مدل های تولید متن Mistral را در SageMaker JumpStart با استفاده از Amazon SageMaker Studio UI با چند کلیک یا با استفاده از SageMaker Python SDK.

مدل‌های بنیادی با وظایف مولد، از ساخت متن و خلاصه، پاسخ دادن به سؤالات، تا تولید تصاویر و ویدیوها، بسیار خوب عمل می‌کنند. علیرغم قابلیت های تعمیم زیاد این مدل ها، اغلب موارد استفاده وجود دارد که داده های دامنه بسیار خاصی دارند (مانند خدمات درمانی یا خدمات مالی)، و این مدل ها ممکن است نتوانند نتایج خوبی برای این موارد استفاده ارائه دهند. این منجر به نیاز به تنظیم دقیق بیشتر این مدل‌های هوش مصنوعی مولد بر روی داده‌های مورد خاص و دامنه خاص می‌شود.

در این پست، نحوه تنظیم دقیق مدل Mistral 7B با استفاده از SageMaker JumpStart را نشان می دهیم.

Mistral 7B چیست؟

Mistral 7B یک مدل پایه است که توسط Mistral AI توسعه یافته و از توانایی های تولید متن و کد انگلیسی پشتیبانی می کند. از انواع موارد استفاده مانند خلاصه سازی متن، طبقه بندی، تکمیل متن و تکمیل کد پشتیبانی می کند. برای نشان دادن قابلیت سفارشی‌سازی مدل، Mistral AI یک مدل Mistral 7B-Instruct را نیز برای موارد استفاده از چت منتشر کرده است که با استفاده از مجموعه‌های داده‌های مکالمه در دسترس عموم به‌خوبی تنظیم شده است.

Mistral 7B یک مدل ترانسفورماتور است و از توجه پرس و جو گروهی و توجه پنجره کشویی برای دستیابی به استنتاج سریعتر (تأخیر کم) و مدیریت دنباله های طولانی تر استفاده می کند. توجه پرس و جو گروهی معماری است که توجه چند پرس و جو و چند سر را برای دستیابی به کیفیت خروجی نزدیک به توجه چند سر و سرعت قابل مقایسه با توجه چند پرس و جو ترکیب می کند. روش توجه پنجره کشویی از سطوح چندگانه یک مدل ترانسفورماتور برای تمرکز بر اطلاعاتی که قبلا آمده است استفاده می کند، که به مدل کمک می کند تا محدوده طولانی تری از زمینه را درک کند. . Mistral 7B دارای طول زمینه 8,000 توکن است، تأخیر کم و توان عملیاتی بالا را نشان می‌دهد و در مقایسه با مدل‌های جایگزین بزرگ‌تر، عملکرد قوی دارد و نیازهای حافظه کم را در اندازه مدل 7B فراهم می‌کند. این مدل تحت مجوز مجاز Apache 2.0 برای استفاده بدون محدودیت در دسترس است.

می توانید مدل ها را با استفاده از SageMaker Studio UI یا SageMaker Python SDK تنظیم دقیق کنید. ما در این پست به هر دو روش می پردازیم.

تنظیم دقیق از طریق SageMaker Studio UI

در SageMaker Studio، می‌توانید از طریق SageMaker JumpStart به مدل Mistral دسترسی داشته باشید مدل ها، نوت بوک ها و راه حل ها، همانطور که در تصویر زیر نشان داده شده است.

اگر مدل‌های Mistral را نمی‌بینید، نسخه SageMaker Studio خود را با خاموش کردن و راه‌اندازی مجدد به‌روزرسانی کنید. برای اطلاعات بیشتر در مورد به روز رسانی نسخه، مراجعه کنید برنامه های استودیو را خاموش و به روز کنید.

تنظیم دقیق و استقرار Mistral 7B با Amazon SageMaker JumpStart | خدمات وب آمازون هوش داده پلاتو بلاک چین. جستجوی عمودی Ai.

در صفحه مدل، می توانید به آن اشاره کنید سرویس ذخیره سازی ساده آمازون سطل (Amazon S3) حاوی مجموعه داده‌های آموزشی و اعتبارسنجی برای تنظیم دقیق. علاوه بر این، می‌توانید پیکربندی استقرار، فراپارامترها و تنظیمات امنیتی را برای تنظیم دقیق پیکربندی کنید. سپس می توانید انتخاب کنید قطار برای شروع کار آموزشی در یک نمونه SageMaker ML.

تنظیم دقیق و استقرار Mistral 7B با Amazon SageMaker JumpStart | خدمات وب آمازون هوش داده پلاتو بلاک چین. جستجوی عمودی Ai.

مدل را مستقر کنید

پس از تنظیم دقیق مدل، می توانید آن را با استفاده از صفحه مدل در SageMaker JumpStart اجرا کنید. همانطور که در تصویر زیر نشان داده شده است، گزینه استقرار مدل تنظیم شده پس از تکمیل تنظیم دقیق ظاهر می شود.

تنظیم دقیق و استقرار Mistral 7B با Amazon SageMaker JumpStart | خدمات وب آمازون هوش داده پلاتو بلاک چین. جستجوی عمودی Ai.

تنظیم دقیق از طریق SageMaker Python SDK

همچنین می‌توانید مدل‌های Mistral را با استفاده از SageMaker Python SDK تنظیم کنید. نوت بوک کامل در دسترس است GitHub. در این قسمت نمونه هایی از دو نوع تنظیم دقیق را ارائه می دهیم.

تنظیم دقیق دستورالعمل

تنظیم دستورالعمل تکنیکی است که شامل تنظیم دقیق یک مدل زبان بر روی مجموعه ای از وظایف پردازش زبان طبیعی (NLP) با استفاده از دستورالعمل ها می شود. در این تکنیک، مدل برای انجام وظایف با پیروی از دستورالعمل های متنی به جای مجموعه داده های خاص برای هر کار، آموزش داده می شود. این مدل با مجموعه‌ای از نمونه‌های ورودی و خروجی برای هر کار به‌خوبی تنظیم می‌شود، و به مدل اجازه می‌دهد تا کارهای جدیدی را تعمیم دهد که به صراحت در مورد آن‌ها آموزش ندیده‌اند تا زمانی که دستورات برای وظایف ارائه شده است. تنظیم دستورالعمل به بهبود دقت و اثربخشی مدل‌ها کمک می‌کند و در شرایطی که مجموعه داده‌های بزرگ برای کارهای خاص در دسترس نیستند، مفید است.

اجازه دهید از طریق کد تنظیم دقیق ارائه شده در مثال حرکت کنیم دفتر یادداشت با SageMaker Python SDK.

ما از زیر مجموعه ای استفاده می کنیم مجموعه داده دالی در قالب تنظیم دستورالعمل، و مشخص کنید template.json فایلی که فرمت های ورودی و خروجی را توصیف می کند. داده های آموزشی باید در قالب خطوط JSON (jsonl.) قالب بندی شوند، که در آن هر خط یک فرهنگ لغت است که یک نمونه داده واحد را نشان می دهد. در این مورد نام آن را می گذاریم train.jsonl.

قطعه زیر نمونه ای از آن است train.jsonl. کلیدها instruction, contextو response در هر نمونه باید ورودی های مربوطه داشته باشد {instruction}, {context}, {response} در template.json.

{ "instruction": "What is a dispersive prism?", "context": "In optics, a dispersive prism is an optical prism that is used to disperse light, that is, to separate light into its spectral components (the colors of the rainbow). Different wavelengths (colors) of light will be deflected by the prism at different angles. This is a result of the prism material's index of refraction varying with wavelength (dispersion). Generally, longer wavelengths (red) undergo a smaller deviation than shorter wavelengths (blue). The dispersion of white light into colors by a prism led Sir Isaac Newton to conclude that white light consisted of a mixture of different colors.", "response": "A dispersive prism is an optical prism that disperses the light's different wavelengths at different angles. When white light is shined through a dispersive prism it will separate into the different colors of the rainbow."
}

در زیر نمونه ای از template.json:

{ "prompt": "Below is an instruction that describes a task, paired with an input that provides further context. " "Write a response that appropriately completes the request.nn" "### Instruction:n{instruction}nn### Input:n{context}nn", "completion": " {response}",
}

پس از آپلود الگوی prompt و داده های آموزشی در یک سطل S3، می توانید هایپرپارامترها را تنظیم کنید.

my_hyperparameters["epoch"] = "1"
my_hyperparameters["per_device_train_batch_size"] = "2"
my_hyperparameters["gradient_accumulation_steps"] = "2"
my_hyperparameters["instruction_tuned"] = "True"
print(my_hyperparameters)

سپس می توانید فرآیند تنظیم دقیق را شروع کرده و مدل را در یک نقطه پایانی استنتاج قرار دهید. در کد زیر از نمونه ml.g5.12xlarge استفاده می کنیم:

from sagemaker.jumpstart.estimator import JumpStartEstimator instruction_tuned_estimator = JumpStartEstimator( model_id=model_id, hyperparameters=my_hyperparameters, instance_type="ml.g5.12xlarge",
)
instruction_tuned_estimator.fit({"train": train_data_location}, logs=True) instruction_tuned_predictor = instruction_tuned_estimator.deploy()

تنظیم دقیق تطبیق دامنه

تنظیم دقیق تطبیق دامنه فرآیندی است که یک LLM از قبل آموزش دیده را برای تطبیق بهتر با یک دامنه یا کار خاص اصلاح می کند. با استفاده از مجموعه داده‌های کوچک‌تر و مختص دامنه، LLM را می‌توان برای درک و تولید محتوای دقیق‌تر، مرتبط‌تر و روشن‌تر برای آن دامنه خاص تنظیم کرد، در حالی که هنوز دانش گسترده‌ای را که در طول آموزش اولیه به دست آورده است حفظ می‌کند.

مدل Mistral را می توان بر روی هر مجموعه داده خاص دامنه تنظیم کرد. پس از تنظیم دقیق، انتظار می‌رود متن مخصوص دامنه تولید کند و وظایف مختلف NLP را در آن دامنه خاص حل کند. برای مجموعه داده آموزشی، یک فهرست راهنمای قطار و یک دایرکتوری تأیید اعتبار اختیاری ارائه کنید که هر کدام شامل یک فایل CSV، JSON، یا TXT است. برای فرمت‌های CSV و JSON، از داده‌ها استفاده کنید text ستون یا ستون اول اگر text وجود ندارد اطمینان حاصل کنید که فقط یک فایل در زیر هر دایرکتوری وجود دارد. به عنوان مثال، داده های ورودی ممکن است فایل های SEC آمازون به عنوان یک فایل متنی باشند:

This report includes estimates, projections, statements relating to our
business plans, objectives, and expected operating results that are “forward-
looking statements” within the meaning of the Private Securities Litigation
Reform Act of 1995, Section 27A of the Securities Act of 1933, and Section 21E
of the Securities Exchange Act of 1934. Forward-looking statements may appear
throughout this report, including the following sections: “Business” (Part I,
Item 1 of this Form 10-K), “Risk Factors” (Part I, Item 1A of this Form 10-K),
and “Management’s Discussion and Analysis of Financial Condition and Results
of Operations” (Part II, Item 7 of this Form 10-K). These forward-looking
statements generally are identified by the words “believe,” “project,”
“expect,” “anticipate,” “estimate,” “intend,” “strategy,” “future,”
“opportunity,” “plan,” “may,” “should,” “will,” “would,” “will be,” “will
continue,” “will likely result,” and similar expressions.

شما می توانید تنظیم دقیق دامنه را با تعیین هایپرپارامتر شروع کنید.instruction_tuned" مانند "False". بقیه مراحل مشابه مراحل تنظیم دقیق دستورالعمل است.

تنظیم کردیم max_input_length در g2048xlarge 5.12 باشد. می توانید از طول ورودی بالاتر در نوع نمونه بزرگتر استفاده کنید. برای جزئیات، نگاه کنید به نمونه دفترچه یادداشت.

مثال استنتاج با و بدون تنظیم دقیق

جدول زیر شامل نتایج مدل Mistral 7B است که با اسناد بایگانی SEC آمازون از سال 2021 تا 2022 تنظیم شده است. ما خروجی را قبل و بعد از تنظیم دقیق مقایسه می کنیم.

درخواست ورودی خروجی قبل از تنظیم دقیق خروجی پس از تنظیم دقیق پارامترهای
این گزارش فرم 10-K نشان می دهد که

این شرکت به مدت 10 سال فعالیت داشته و در مجموع 10 کارمند دارد. این شرکت در مجموع 10 کارمند دارد و در زمینه ارائه خدمات به مردم فعالیت دارد. این شرکت در مجموع 10 کارمند دارد و در زمینه ارائه خدمات به مردم فعالیت دارد.

این شرکت در مجموع 10 کارمند دارد و در زمینه ارائه خدمات به مردم فعالیت دارد. این شرکت در مجموع 10 کارمند دارد و در زمینه ارائه خدمات به مردم فعالیت دارد. این شرکت در مجموع 10 کارمند دارد و در زمینه ارائه خدمات به مردم فعالیت دارد. این شرکت در مجموع 10 پرسنل دارد و در زمینه ارائه خدمات می باشد

ما در سال های 1.2، 1.5 و 1.8 فروش خالص 2004 میلیارد دلار، 2003 میلیارد دلار و 2002 میلیارد دلار داشتیم. این مبالغ شامل فروش از وب سایت های بین المللی ما می شود. فروش خالص از وب سایت های بین المللی ما 323 میلیون دلار، 242 میلیون دلار و 150 میلیون دلار در سال های 2004، 2003 و 2002 بود. فروش خالص از وب سایت های بین المللی ما 27٪، 16٪ و 8٪ از فروش خالص را در سال های 2004، 2003 و 2002 تشکیل می داد. . "دما": 0.2،
"max_new_tokens": 150،
ما از طریق به مصرف کنندگان خدمات رسانی می کنیم

شبکه خرده فروشی ما از 1,700 فروشگاه که شامل 1,200 فروشگاه در ایالات متحده، 400 فروشگاه در کانادا و 100 فروشگاه در مکزیک است. ما همچنین از طریق وب سایت های تجارت الکترونیک خود به مصرف کنندگان خدمات ارائه می دهیم.

## بزرگترین فروشگاه لوازم خانگی چیست؟

Home Depot بزرگترین خرده فروش لوازم خانگی در ایالات متحده است.

## بزرگترین فروشگاه لوازم خانگی در جهان چیست؟

بزرگترین فروشگاه لوازم خانگی در جهان Home Depot است.

## بزرگترین فروشگاه لوازم خانگی در چیست؟

فروشگاه های آنلاین و فیزیکی ما و تمرکز بر انتخاب، قیمت و راحتی. ما فروشگاه‌های خود را طوری طراحی می‌کنیم که صدها میلیون محصول منحصربه‌فرد توسط ما و اشخاص ثالث در ده‌ها دسته محصول فروخته شوند. مشتریان از طریق وب‌سایت‌ها، برنامه‌های تلفن همراه، الکسا، دستگاه‌ها، پخش جریانی و بازدید فیزیکی از فروشگاه‌های ما به پیشنهادات ما دسترسی دارند. ما همچنین دستگاه های الکترونیکی از جمله Kindle، قرص فایر، Fire TV، Echo و Ring را تولید و می فروشیم و محتوای رسانه ای را توسعه و تولید می کنیم. ما به دنبال ارائه قیمت های پایین، تحویل سریع و رایگان، عملکرد آسان و خدمات به موقع به مشتریان خود هستیم. علاوه بر این، ما خدمات اشتراکی مانند Amazon Prime، a
چشم انداز ما این است

ارائه دهنده پیشرو خدمات مراقبت های بهداشتی با کیفیت، مقرون به صرفه و در دسترس در جوامعی که به آنها خدمت می کنیم.

ماموریت ما ارائه خدمات مراقبت های بهداشتی با کیفیت، مقرون به صرفه و در دسترس به جوامعی است که به آنها خدمت می کنیم.

ارزش های ما عبارتند از:

- صداقت: ما در تمام معاملات خود با صداقت و درستکاری عمل می کنیم.
- احترام: ما با همه با احترام و وقار رفتار می کنیم.
- تعالی: ما در هر کاری که انجام می دهیم برای برتری تلاش می کنیم.
- شفقت: ما با دلسوزی از بیماران خود و یکدیگر مراقبت می کنیم.
- کار تیمی: ما به عنوان یک تیم برای رسیدن به اهداف خود با هم کار می کنیم.

تعهد ما به بیمارانمان ارائه خدمات بهداشتی با کیفیت، مقرون به صرفه و در دسترس است.

مشتری مدارترین شرکت زمین باشد. ما توسط چهار اصل هدایت می‌شویم: وسواس مشتری به جای تمرکز بر رقیب، اشتیاق به اختراع، تعهد به تعالی عملیاتی و تفکر بلندمدت. در هر یک از بخش‌هایمان، ما به مجموعه‌های مشتریان اصلی خود، متشکل از مصرف‌کنندگان، فروشندگان، توسعه‌دهندگان، شرکت‌ها و تولیدکنندگان محتوا خدمات ارائه می‌کنیم. علاوه بر این، ما خدماتی مانند تبلیغات را ارائه می دهیم. ما عملیات خود را در سه بخش سازماندهی کرده ایم: آمریکای شمالی، بین المللی و AWS. این بخش ها منعکس کننده روشی است که شرکت عملکرد تجاری خود را ارزیابی می کند و عملیات خود را مدیریت می کند. اطلاعات مربوط به فروش خالص ما در بند 8 قسمت دوم، «صورتهای مالی» آمده است

همانطور که می بینید، مدل تنظیم شده اطلاعات دقیق تری را در رابطه با آمازون در مقایسه با نمونه از پیش آموزش دیده عمومی ارائه می دهد. این به این دلیل است که تنظیم دقیق مدل را برای درک تفاوت های ظریف، الگوها و ویژگی های مجموعه داده ارائه شده تطبیق می دهد. با استفاده از یک مدل از پیش آموزش‌دیده و تنظیم آن با تنظیم دقیق، اطمینان حاصل می‌کنیم که شما بهترین‌ها را از هر دو جهان دریافت می‌کنید: دانش گسترده مدل از پیش آموزش‌دیده و دقت تخصصی برای مجموعه داده منحصربه‌فرد شما. ممکن است یک اندازه در دنیای یادگیری ماشین مناسب نباشد، و تنظیم دقیق راه حلی است که شما به آن نیاز دارید!

نتیجه

در این پست، به تنظیم دقیق مدل Mistral 7B با استفاده از SageMaker JumpStart پرداختیم. ما نشان دادیم که چگونه می‌توانید از کنسول SageMaker JumpStart در SageMaker Studio یا SageMaker Python SDK برای تنظیم دقیق و استقرار این مدل‌ها استفاده کنید. به عنوان گام بعدی، می‌توانید با استفاده از کد ارائه شده در مخزن GitHub، این مدل‌ها را روی مجموعه داده‌های خود تنظیم دقیق کنید تا نتایج را برای موارد استفاده خود آزمایش و محک بزنید.


درباره نویسنده

شین هوانگشین هوانگ یک دانشمند کاربردی ارشد برای آمازون SageMaker JumpStart و آمازون SageMaker الگوریتم های داخلی است. او بر توسعه الگوریتم‌های یادگیری ماشینی مقیاس‌پذیر تمرکز دارد. علایق تحقیقاتی او در زمینه پردازش زبان طبیعی، یادگیری عمیق قابل توضیح بر روی داده های جدولی، و تجزیه و تحلیل قوی خوشه بندی ناپارامتری فضا-زمان است. او مقالات زیادی را در کنفرانس‌های ACL، ICDM، KDD، و انجمن آماری سلطنتی: سری A منتشر کرده است.

تنظیم دقیق و استقرار Mistral 7B با Amazon SageMaker JumpStart | خدمات وب آمازون هوش داده پلاتو بلاک چین. جستجوی عمودی Ai.ویوک گانگاسانی یک معمار راه‌حل‌های راه‌اندازی AI/ML برای استارت‌آپ‌های هوش مصنوعی مولد در AWS است. او به استارت‌آپ‌های نوظهور GenAI کمک می‌کند تا با استفاده از خدمات AWS و محاسبات تسریع، راه‌حل‌های نوآورانه بسازند. در حال حاضر، او بر توسعه استراتژی‌هایی برای تنظیم دقیق و بهینه‌سازی عملکرد استنتاج مدل‌های زبان بزرگ متمرکز است. ویوک در اوقات فراغت خود از پیاده روی، تماشای فیلم و امتحان غذاهای مختلف لذت می برد.

تنظیم دقیق و استقرار Mistral 7B با Amazon SageMaker JumpStart | خدمات وب آمازون هوش داده پلاتو بلاک چین. جستجوی عمودی Ai.دکتر آشیش ختان یک دانشمند کاربردی ارشد با الگوریتم های داخلی Amazon SageMaker است و به توسعه الگوریتم های یادگیری ماشین کمک می کند. او دکترای خود را از دانشگاه ایلینویز Urbana-Champaign گرفت. او یک محقق فعال در یادگیری ماشین و استنتاج آماری است و مقالات زیادی در کنفرانس های NeurIPS، ICML، ICLR، JMLR، ACL و EMNLP منتشر کرده است.

تمبر زمان:

بیشتر از آموزش ماشین AWS