ساخت چتبات فروشگاهی با هوش مصنوعی و پایگاه دانش
· ۵ دقیقه مطالعه
مشتری ساعت یک بامداد میپرسد «این کفش سایز ۴۳ دارد؟» و تا صبح جوابی نمیگیرد. احتمالاً از رقیب شما خرید میکند. یک چتبات خوب این مشکل را حل میکند، به شرطی که واقعاً فروشگاه شما را بشناسد و جوابهای کلی و ساختگی ندهد. راه رسیدن به این چتبات، پایگاه دانش است.
پایگاه دانش چیست و چرا لازم است؟
مدلهای زبانی دربارهی دنیا زیاد میدانند، اما دربارهی فروشگاه شما هیچ چیز نمیدانند. اگر بپرسید «هزینهی ارسال به شیراز چقدر است؟» یا جواب نمیدهند یا بدتر، عددی از خودشان میسازند. پایگاه دانش این شکاف را پر میکند.
روش کار که به آن RAG میگویند ساده است: محتوای شما (صفحههای سایت، فهرست محصولات، قوانین ارسال و مرجوعی) به تکههای کوچک تقسیم و با یک مدل Embedding به بردار عددی تبدیل میشود. وقتی مشتری سؤالی میپرسد، مرتبطترین تکهها پیدا میشوند و همراه سؤال به مدل زبانی داده میشوند. مدل فقط بر اساس همین اطلاعات پاسخ میدهد.
قدم اول: ساخت پایگاه دانش در هوشوانا
در داشبورد به بخش «پایگاههای دانش» بروید و یک پایگاه جدید بسازید، مثلاً با نام «فروشگاه کفش». حالا باید منبع اضافه کنید. هوشوانا چند نوع منبع را پشتیبانی میکند:
- خزش وبسایت: آدرس سایت را بدهید تا صفحهها خوانده شوند. عمق و حداکثر تعداد صفحه را تعیین کنید تا فقط بخشهای مفید خوانده شوند.
- آدرس تکی: برای صفحههایی مثل «قوانین مرجوعی» یا «سؤالات متداول».
- فایل: فایل PDF، متن، Markdown، CSV یا JSON آپلود کنید.
- پایگاه داده: خروجی CSV یا JSON جدول محصولات را آپلود کنید. هوشوانا ستونها را تحلیل میکند، خلاصهای از داده میسازد و هر ردیف را قابل جستوجو میکند.
برای فروشگاه، ترکیب پیشنهادی این است: خزش صفحههای اطلاعرسانی سایت، بهعلاوهی فایل CSV محصولات با ستونهای نام، قیمت، سایزها، رنگها و موجودی.
قدم دوم: آمادهسازی دادهی محصولات
کیفیت پاسخ چتبات مستقیماً به کیفیت داده بستگی دارد. چند نکتهی مهم:
- نام ستونها را گویا بنویسید، مثلاً «قیمت_تومان» بهجای «p1».
- اطلاعات تکراری و ستونهای بیاستفاده را حذف کنید.
- متن قوانین را ساده و صریح بنویسید. اگر قانون مرجوعی هفت روز است، همین را بنویسید، نه یک پاراگراف حقوقی مبهم.
- هر وقت قیمت یا موجودی عوض شد، فایل را دوباره آپلود کنید. میتوانید این کار را با API خودکار کنید.
قدم سوم: انتخاب مدل
برای چتبات فروشگاهی سه ویژگی مهم است: فارسی طبیعی، سرعت پاسخ و قیمت پایین، چون تعداد پیامها زیاد است. پیشنهاد ما:
| مدل | چرا |
|---|---|
| Claude Haiku 5.5 | فارسی عالی، سریع و ارزان؛ بهترین انتخاب پیشفرض |
| GPT-6 Luna | قیمت مشابه، Tool calling خوب برای اتصال به سیستم سفارش |
| Gemini 3.8 Flash | اگر مشتری عکس محصول میفرستد و میپرسد «مشابه این دارید؟» |
برای Embedding هم text-embedding-3-small کافی و بسیار ارزان است و پایگاه دانش هوشوانا بهطور پیشفرض از همین مدل استفاده میکند.
قدم چهارم: اتصال با API
هوشوانا با API سازگار با OpenAI کار میکند، پس هر کتابخانهای که دارید قابل استفاده است. کافی است شناسهی پایگاه دانش را در فیلد hooshvana بفرستید:
from openai import OpenAI
client = OpenAI(base_url="https://hooshvana.ir/api/v1", api_key="hv-کلید-شما")
response = client.chat.completions.create(
model="anthropic/claude-haiku-5.5",
messages=[
{"role": "system", "content": "تو دستیار فروشگاه کفش هستی. فقط بر اساس اطلاعات فروشگاه پاسخ بده و اگر نمیدانی، بگو که کارشناس پیگیری میکند."},
{"role": "user", "content": "کفش رانینگ مشکی سایز ۴۳ موجود است؟"},
],
extra_body={"hooshvana": {"knowledge_base_ids": ["شناسه-پایگاه-دانش"]}},
)
print(response.choices[0].message.content)هوشوانا پیش از ارسال به مدل، مرتبطترین تکهها را پیدا میکند و با ارجاع به منبع در پیام سیستمی قرار میدهد. هزینهی جستوجو و مدل هر دو در لاگها و کیف پول شما ثبت میشود.
راه سادهتر هم وجود دارد: پایگاه دانش را به خود کلید API وصل کنید. در این حالت هر درخواستی که با این کلید ارسال شود، خودکار از پایگاه دانش استفاده میکند و نیازی به تغییر کد نیست.
قدم پنجم: نوشتن پرامپت سیستمی خوب
پرامپت سیستمی شخصیت و مرزهای چتبات را تعیین میکند. یک الگوی امتحانشده:
- نقش: «تو دستیار فروش فروشگاه X هستی.»
- لحن: «مؤدب، صمیمی و کوتاه پاسخ بده. از «شما» استفاده کن.»
- مرزها: «فقط دربارهی محصولات و خدمات فروشگاه صحبت کن. قیمت و موجودی را فقط از اطلاعات دادهشده بگو.»
- رفتار در ابهام: «اگر اطلاعات کافی نداری، شمارهی پشتیبانی را بده.»
- هدف فروش: «در پایان، اگر مناسب بود، محصول مرتبط پیشنهاد بده.»
قدم ششم: تست پیش از انتشار
پیش از اینکه چتبات را روی سایت بگذارید، فهرستی از پنجاه سؤال واقعی مشتریها جمع کنید و جوابها را بررسی کنید. بهخصوص این موارد را امتحان کنید: سؤال دربارهی محصولی که ندارید، سؤال خارج از موضوع، درخواست تخفیف و پیامهای محاورهای با غلط املایی. در زمین بازی داشبورد میتوانید همین تستها را بدون نوشتن کد انجام دهید.
امنیت و هزینه
برای کلید چتبات حتماً سقف خرج روزانه و محدودیت تعداد درخواست در دقیقه بگذارید و دامنهی سایتتان را در فهرست Referrer مجاز قرار دهید. با این تنظیمات، حتی اگر کسی کلید را از کد سایت پیدا کند، نمیتواند از آن سوءاستفاده کند. البته بهترین روش این است که درخواستها از سمت سرور شما ارسال شوند و کلید هرگز به مرورگر نرسد.
هزینهی واقعی چقدر است؟ یک گفتوگوی معمولی با پنج پیام، با Claude Haiku 5.5 و پایگاه دانش، معمولاً بین پانصد تا هزار تومان هزینه دارد. یعنی با شارژ صد هزار تومانی میتوانید به بیش از صد مشتری پاسخ کامل بدهید.
جمعبندی
چتبات فروشگاهی با پایگاه دانش دیگر پروژهای پیچیده و گران نیست. سایت و فایل محصولات را به پایگاه دانش بدهید، یک مدل سریع و ارزان مثل Claude Haiku 5.5 انتخاب کنید، پرامپت سیستمی روشن بنویسید و پیش از انتشار خوب تست کنید. نتیجه، فروشندهای است که هیچوقت خسته نمیشود و ساعت یک بامداد هم جواب مشتری را میدهد.