ساخت محصول هوش مصنوعی فارسی: راهنمای عملی
از هزینهی توکن متن فارسی تا رابط راستبهچپ، ارزیابی خروجی و حریم خصوصی؛ نکتههای عملی برای ساختن محصول هوش مصنوعی به زبان فارسی.
نوشتهٔ تیم محصولهانت · ۱۷ فروردین ۱۴۰۵

مدلهای زبانی بزرگ امروز فارسی را میفهمند، ولی کیفیتشان یکسان نیست. اگر میخواهی روی این مدلها یک محصول فارسی بسازی، مدل فقط یک بخش ماجراست. در این نوشته نکتههای عملی را مرور میکنیم که معمولاً دیر به چشم میآیند.
اول مسئله را مشخص کن
«هوش مصنوعی فارسی» خودش محصول نیست. محصول یعنی یک کار مشخص برای یک گروه مشخص. مثلاً خلاصه کردن جلسههای کاری فارسی، جواب دادن به سؤالهای مشتری یک فروشگاه، یا مرتب کردن متن فاکتورها.
هرچه مسئله مشخصتر باشد، راحتتر میتوانی بسنجی مدل خوب کار میکند یا نه. و معمولاً ارزش واقعی محصولت همینجاست: در دانستن جزئیات کار کاربر، نه در خود مدل.
هزینهی توکن در فارسی
مدلها متن را به توکن تبدیل میکنند و هزینه و محدودیت طول بر اساس توکن حساب میشود. در بسیاری از توکنایزرها یک متن فارسی به توکنهای بیشتری از متن انگلیسی هممعنی تبدیل میشود. یعنی ممکن است همان کار به زبان فارسی گرانتر تمام شود و زودتر به سقف طول برسد.
پس قبل از قیمتگذاری، خودت اندازه بگیر. چند نمونهی واقعی از ورودی کاربرهایت را بردار، با ابزار شمارش توکن همان مدلی که استفاده میکنی بشمار و هزینهی هر درخواست را حساب کن. متن سیستمی (system prompt) را کوتاه نگه دار، چون در هر درخواست تکرار میشود. اگر میتوانی، دستورها را کوتاه و دقیق بنویس و از تکرار نمونههای طولانی پرهیز کن.
متن را قبل و بعد از مدل تمیز کن
متن فارسی کاربرها یکدست نیست. بعضی «ي» و «ك» عربی تایپ میکنند، بعضی ارقام انگلیسی، بعضی نیمفاصله را با فاصله یا بدون فاصله مینویسند. قبل از فرستادن به مدل یا ذخیره برای جستوجو، متن را نرمال کن: «ي» و «ك» را به «ی» و «ک» فارسی تبدیل کن و ارقام را یکسان کن.
خروجی مدل را هم چک کن. گاهی نیمفاصلهها را درست نمیگذارد یا ارقام را مخلوط مینویسد. یک مرحلهی سادهی پسپردازش این مشکل را تا حد زیادی کم میکند. جزئیات نیمفاصله را در /blog/persian-typography-half-space-fundamentals نوشتهایم.
اگر از جستوجوی معنایی (RAG) استفاده میکنی، همین نرمالسازی را هم روی سندها انجام بده و هم روی سؤال کاربر. وگرنه «کتابها» و «كتاب ها» دو چیز متفاوت دیده میشوند.
رابط راستبهچپ با متن مخلوط
جواب مدلها اغلب ترکیبی از فارسی، اسمهای انگلیسی، عدد و گاهی کد است. اینجا رابط زود بههم میریزد. چند کار ساده کمک میکند:
برای هر پیام dir="auto" بگذار تا جهت بر اساس اولین حرف قوی تعیین شود. کد و فرمول را همیشه چپبهراست نمایش بده. وقتی متن را کلمهبهکلمه (streaming) نشان میدهی، مطمئن شو جهت پاراگراف وسط کار عوض نمیشود. و فهرستها و علامتهای نگارشی را روی چند جواب واقعی امتحان کن، نه فقط روی متن نمونه.
برای اصول کلی رابط راستبهچپ، /blog/rtl-ux-five-principles را ببین.
کیفیت خروجی را با فارسیزبانها بسنج
اینکه مدلی در یک جدول امتیاز جایگاه خوبی دارد، به این معنی نیست که برای کار تو خوب است. یک مجموعهی کوچک آزمون بساز: مثلاً پنجاه ورودی واقعی (با اجازه و بدون اطلاعات شخصی) و جواب خوبی که انتظار داری.
بعد خروجی مدلهای مختلف را کنار هم بگذار و از چند فارسیزبان بخواه بدون دانستن اسم مدل نمره بدهند. به این چیزها دقت کن: آیا جواب درست است؟ آیا لحن طبیعی است یا بوی ترجمه میدهد؟ آیا «شما» و «تو» را درست و یکسان به کار میبرد؟ آیا اسمها، تاریخها و عددها را درست مینویسد؟
هر بار که مدل یا دستور را تغییر دادی، همین آزمون را دوباره اجرا کن. اینطوری بیصدا عقب نمیروی.
حریم خصوصی و اعتماد
وقتی متن کاربر را به یک سرویس بیرونی میفرستی، کاربر باید بداند. در صفحهی حریم خصوصی ساده بنویس چه دادهای کجا میرود و چقدر نگه داشته میشود. اطلاعات حساس مثل شمارهی تلفن، کد ملی یا شمارهی کارت را اگر لازم نیست، قبل از ارسال حذف یا ماسک کن.
به کاربر هم بگو جوابها ممکن است اشتباه باشند، مخصوصاً در موضوعهای حقوقی، مالی و درمانی. یک دکمهی «این جواب مشکل دارد» بگذار؛ هم اعتماد میسازد و هم نمونههای خوبی برای آزمونت جمع میکند.
قبل از انتشار
مسئله را مشخص کن، هزینهی توکن را اندازه بگیر، متن را نرمال کن، رابط را با جوابهای واقعی امتحان کن و کیفیت را با فارسیزبانها بسنج.
محصول هوش مصنوعی فارسی ساختهای؟ /submit را باز کن و رایگان ثبتش کن.