تبدیل متن به جدول با هوش مصنوعی؛ آموزش ساخت جدول در Word و Excel

در این راهنمای عملی یاد می‌گیرید متن فارسی و اطلاعات پراکنده را با هوش مصنوعی به جدول دقیق تبدیل و خروجی مناسب Word، Excel، CSV، JSON و نرم‌افزار خود تولید کنید.

Share
تبدیل متن به جدول با هوش مصنوعی؛ آموزش ساخت جدول در Word و Excel

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

انتقال دستی این اطلاعات به جدول زمان‌بر است و احتمال جابه‌جایی مقادیر، حذف اطلاعات یا قرار دادن داده در ستون اشتباه را افزایش می‌دهد.

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

  • جدول Word
  • جدول Excel
  • Google Sheets
  • فایل CSV
  • جدول Markdown
  • کد HTML
  • آرایه JSON
  • DataFrame پایتون
  • ورودی پایگاه داده
  • جدول مناسب گزارش

در این مقاله یاد می‌گیرید:

  • تبدیل متن به جدول چگونه انجام می‌شود
  • چگونه ستون‌های مناسب را انتخاب کنید
  • چگونه جلوی ساخته شدن اطلاعات نادرست را بگیرید
  • چگونه متن را در Word به جدول تبدیل کنید
  • چگونه خروجی را وارد Excel و Google Sheets کنید
  • چگونه CSV، JSON، HTML و Markdown تولید کنید
  • چگونه جدول‌های طولانی را کنترل کنید
  • چگونه با API درواره یک ابزار Text to Table بسازید

تبدیل متن به جدول چیست؟

تبدیل متن به جدول یا Text to Table فرایندی است که در آن اطلاعات غیرساختاریافته یا نیمه‌ساختاریافته به سطرها و ستون‌های مشخص تبدیل می‌شوند.

متن ورودی ممکن است چنین باشد:

شرکت آریا از تهران، محصول سازمانی را در طرح سالانه خریداری کرده است. مسئول ارتباط خانم احمدی است. وضعیت حساب فعال است.

شرکت بهین از اصفهان از طرح ماهانه استفاده می‌کند. مسئول ارتباط آقای رضایی است و حساب در انتظار تمدید قرار دارد.

خروجی مناسب:

شرکتشهرنوع طرحدورهمسئول ارتباطوضعیت
آریاتهرانسازمانیسالانهخانم احمدیفعال
بهیناصفهانمشخص نشدهماهانهآقای رضاییدر انتظار تمدید

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

هوش مصنوعی چگونه متن را به جدول تبدیل می‌کند؟

مدل زبانی در یک فرایند ساده این مراحل را انجام می‌دهد:

  1. موضوع متن را تشخیص می‌دهد.
  2. رکوردهای مستقل را پیدا می‌کند.
  3. ویژگی‌های مشترک رکوردها را استخراج می‌کند.
  4. ستون‌های مناسب را پیشنهاد می‌دهد.
  5. هر رکورد را به یک سطر تبدیل می‌کند.
  6. مقادیر گمشده را مشخص می‌کند.
  7. خروجی را در قالب موردنظر تولید می‌کند.

برای مثال، در متن معرفی چند محصول، هر محصول یک رکورد است و ویژگی‌هایی مانند نام، قیمت، رنگ، موجودی و دسته‌بندی می‌توانند ستون باشند.

چه متن‌هایی را می‌توان به جدول تبدیل کرد؟

مشخصات محصولات

لپ‌تاپ مدل الف دارای ۱۶ گیگابایت رم و ۵۱۲ گیگابایت حافظه است. وزن آن ۱٫۴ کیلوگرم و رنگ آن خاکستری است.

یادداشت جلسه

سارا نسخه اولیه طراحی را تا دوشنبه آماده می‌کند. علی باید بودجه تبلیغات را تا چهارشنبه تأیید کند.

اطلاعات مشتریان

شرکت سپهر در حوزه فروشگاه اینترنتی فعالیت می‌کند و درخواست دموی محصول دارد. مسئول پیگیری مریم است.

نتایج نظرسنجی

کاربر اول از سرعت راضی بود اما رابط کاربری را پیچیده دانست. کاربر دوم قیمت را بالا ارزیابی کرد.

برنامه پروژه

تحقیق بازار از ۱ تا ۵ مرداد انجام می‌شود. طراحی اولیه از ۶ تا ۱۲ مرداد بر عهده تیم طراحی است.

مقایسه ابزارها

ابزار اول خروجی PDF دارد اما همکاری تیمی ندارد. ابزار دوم همکاری هم‌زمان و خروجی تصویر ارائه می‌دهد.

رزومه‌ها

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

متن فاکتور یا رسید

بعد از OCR می‌توان شماره، تاریخ، اقلام، تعداد و مبلغ را به جدول تبدیل کرد.

پیام‌ها و ایمیل‌ها

درخواست‌ها، نام فرستنده، موضوع، اولویت و اقدام بعدی می‌توانند استخراج شوند.

تفاوت جدول، CSV، JSON و Excel

قالبمناسب برایویژگی
جدول Wordسند و گزارشظاهر مناسب و قابل ویرایش
Excelتحلیل و محاسبهفرمول، فیلتر، مرتب‌سازی و نمودار
Google Sheetsهمکاری آنلاینویرایش مشترک و اشتراک‌گذاری
CSVانتقال دادهساده، سبک و سازگار با ابزارهای متعدد
JSONنرم‌افزار و APIساختار قابل پردازش برنامه‌نویسی
Markdownوبلاگ و مستنداتخوانا و ساده
HTMLصفحه وبقابل نمایش و استایل‌دهی
DataFrameتحلیل با پایتونپردازش، پاک‌سازی و تحلیل داده

اگر هدف فقط نمایش در مقاله است، Markdown مناسب است. اگر می‌خواهید روی داده محاسبه انجام دهید، Excel یا CSV انتخاب بهتری است. برای اتصال به نرم‌افزار، JSON معمولاً ساختار مناسب‌تری دارد.

مرحله اول: مشخص کنید هر سطر چه چیزی است

یکی از مهم‌ترین تصمیم‌ها این است که هر سطر جدول چه مفهومی داشته باشد.

برای مثال، در متن یک جلسه می‌توان چند نوع جدول ساخت:

  • هر سطر یک وظیفه
  • هر سطر یک تصمیم
  • هر سطر یک فرد
  • هر سطر یک موضوع
  • هر سطر یک ریسک

اگر این موضوع در پرامپت مشخص نشود، مدل ممکن است ساختاری متفاوت از نیاز شما انتخاب کند.

پرامپت:

متن زیر را به جدول تبدیل کن.

هر سطر باید نماینده یک «وظیفه» باشد، نه یک فرد یا موضوع جلسه.

مرحله دوم: ستون‌ها را مشخص کنید

اگر ستون‌ها را از قبل می‌دانید، آن‌ها را صریح بنویسید:

ستون‌ها:
- وظیفه
- مسئول
- مهلت
- وضعیت
- وابستگی

اگر نمی‌دانید چه ستون‌هایی مناسب‌اند، ابتدا فقط ساختار پیشنهادی بخواهید:

متن زیر را بررسی کن و برای تبدیل آن به جدول، ستون‌های مناسب پیشنهاد بده.

در این مرحله جدول نهایی نساز.

برای هر ستون توضیح بده:
- نام ستون
- مفهوم
- نوع داده
- نمونه مقدار
- دلیل نیاز به ستون

بعد از تأیید ستون‌ها، جدول نهایی را تولید کنید.

مرحله سوم: قاعده اطلاعات گمشده را تعیین کنید

نباید اجازه دهید مدل مقدارهای گمشده را تکمیل کند.

قواعد پیشنهادی:

اگر اطلاعات یک ستون در متن وجود ندارد، عبارت «مشخص نشده» را بنویس.

هیچ نام، عدد، تاریخ، قیمت، وضعیت یا دسته‌بندی را حدس نزن.

مقدار یک سطر را از سطر دیگر کپی نکن، مگر اینکه متن صریحاً نشان دهد آن مقدار مشترک است.

برای خروجی نرم‌افزاری بهتر است مقدار گمشده null باشد:

{
  "deadline": null
}

null از عبارت‌هایی مانند «نامشخص» یا خط تیره برای پردازش برنامه‌نویسی مناسب‌تر است.

پرامپت جامع تبدیل متن به جدول

نقش شما:
به‌عنوان متخصص استخراج اطلاعات و ساخت داده‌های جدولی عمل کن.

وظیفه:
متن ورودی را به جدول تبدیل کن.

تعریف رکورد:
هر سطر نماینده یک [محصول، وظیفه، مشتری، رویداد یا مورد] باشد.

ستون‌ها:
۱. [ستون اول]
۲. [ستون دوم]
۳. [ستون سوم]
۴. [ستون چهارم]

قواعد:
- فقط از اطلاعات موجود در متن استفاده کن.
- اطلاعات جدید تولید نکن.
- مقدارها را حدس نزن.
- اگر مقداری موجود نیست، «مشخص نشده» بنویس.
- هر اطلاعات فقط در ستون مربوط به خود قرار بگیرد.
- اعداد و تاریخ‌ها بدون تغییر معنایی حفظ شوند.
- رکورد تکراری ایجاد نکن.
- توضیحات اضافی خارج از جدول ننویس.
- خروجی را به‌صورت جدول Markdown ارائه بده.
- در پایان، موارد مبهم را در فهرستی جداگانه بنویس.

متن:
[متن ورودی]

مثال اول: تبدیل یادداشت جلسه به جدول

متن:

در جلسه امروز تصمیم گرفته شد نسخه اولیه صفحه فرود تا ۱۵ مرداد آماده شود. سارا مسئول طراحی است. علی باید متن نهایی را تا ۱۲ مرداد تحویل دهد. بررسی فنی صفحه بر عهده رضا است، اما زمان انجام آن هنوز مشخص نشده است.

پرامپت:

متن جلسه را به جدول وظایف تبدیل کن.

ستون‌ها:
- وظیفه
- مسئول
- مهلت
- وضعیت
- وابستگی

اگر اطلاعاتی وجود ندارد، «مشخص نشده» بنویس.

خروجی:

وظیفهمسئولمهلتوضعیتوابستگی
آماده‌سازی متن نهاییعلی۱۲ مردادمشخص نشدهمشخص نشده
طراحی نسخه اولیه صفحه فرودسارا۱۵ مردادمشخص نشدهمتن نهایی
بررسی فنی صفحهرضامشخص نشدهمشخص نشدهنسخه اولیه صفحه

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

مثال دوم: تبدیل مشخصات محصولات به جدول

متن:

مدل آلفا دارای ۸ گیگابایت رم، ۲۵۶ گیگابایت حافظه و رنگ نقره‌ای است. قیمت آن ۳۲ میلیون تومان است.

مدل بتا با ۱۶ گیگابایت رم و ۵۱۲ گیگابایت حافظه ارائه می‌شود. این مدل مشکی است، اما قیمت آن در متن اعلام نشده است.

خروجی:

مدلرمحافظهرنگقیمت
آلفا۸ گیگابایت۲۵۶ گیگابایتنقره‌ای۳۲ میلیون تومان
بتا۱۶ گیگابایت۵۱۲ گیگابایتمشکیمشخص نشده

مثال سوم: تبدیل بازخورد مشتریان به جدول

هر بازخورد متن زیر را به یک سطر تبدیل کن.

ستون‌ها:
- شماره بازخورد
- موضوع
- نکته مثبت
- مشکل
- پیشنهاد مشتری
- شدت مشکل

برای شدت مشکل فقط زمانی مقدار بنویس که در متن صریحاً مشخص شده باشد. شدت را از روی لحن حدس نزن.

این قاعده اهمیت دارد؛ زیرا مدل نباید از روی یک جمله ناراضی، شدت مشکل را بدون معیار مشخص تعیین کند.

مثال چهارم: تبدیل برنامه زمانی به جدول

متن:

تحقیق بازار از ۱ تا ۵ شهریور توسط مریم انجام می‌شود. طراحی اولیه از ۶ شهریور آغاز می‌شود و تا ۱۲ شهریور ادامه دارد. مسئول طراحی سارا است. زمان تست هنوز تعیین نشده است.

خروجی:

فعالیتمسئولتاریخ شروعتاریخ پایانوضعیت
تحقیق بازارمریم۱ شهریور۵ شهریورمشخص نشده
طراحی اولیهسارا۶ شهریور۱۲ شهریورمشخص نشده
تستمشخص نشدهمشخص نشدهمشخص نشدهمشخص نشده

تبدیل متن به جدول Markdown

Markdown برای مقاله، مستندات و Ghost مناسب است.

قالب:

| نام | شهر | وضعیت |
|---|---|---|
| آریا | تهران | فعال |
| بهین | اصفهان | در انتظار |

برای مرتب ماندن جدول:

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

تبدیل متن به جدول در Word

دو روش اصلی وجود دارد.

روش اول: Copilot در Word

در نسخه‌ها و اشتراک‌های واجد شرایط، Copilot می‌تواند متن انتخاب‌شده را با گزینه Visualize as a Table به جدول تبدیل کند. بعد از ساخت پیش‌نمایش می‌توانید جدول را نگه دارید، دوباره تولید کنید یا ستون جدیدی درخواست کنید. راهنمای رسمی تبدیل متن به جدول با Copilot در Word

مراحل:

  1. متن را در Word قرار دهید.
  2. متن موردنظر را انتخاب کنید.
  3. Copilot را باز کنید.
  4. گزینه Visualize as a Table را انتخاب کنید.
  5. پیش‌نمایش جدول را بررسی کنید.
  6. در صورت نیاز، ستون‌ها را اصلاح کنید.
  7. گزینه Keep it را بزنید.

پرامپت نمونه:

این متن را به جدول تبدیل کن.

هر سطر یک محصول باشد.

ستون‌ها:
نام محصول، دسته‌بندی، قیمت، موجودی و توضیح کوتاه.

اگر قیمت یا موجودی در متن وجود ندارد، «مشخص نشده» بنویس.

روش دوم: تبدیل متن جداشده با Tab

Word می‌تواند متن‌هایی را که با Tab، کاما یا جداکننده دیگری تنظیم شده‌اند به جدول تبدیل کند.

نمونه متن Tab-separated:

نام	شهر	وضعیت
آریا	تهران	فعال
بهین	اصفهان	در انتظار

سپس:

  1. متن را انتخاب کنید.
  2. وارد Insert شوید.
  3. Table را انتخاب کنید.
  4. Convert Text to Table را بزنید.
  5. Tabs را به‌عنوان جداکننده انتخاب کنید.
  6. تبدیل را تأیید کنید.

مایکروسافت برای این قابلیت راهنمای رسمی دارد و توصیه می‌کند سطرها با Paragraph و ستون‌ها با جداکننده‌ای مانند Tab مشخص شوند. تبدیل متن به جدول در Word

تبدیل متن به Excel با هوش مصنوعی

بهترین روش برای انتقال خروجی به Excel، تولید TSV یا CSV است.

روش TSV

در TSV ستون‌ها با Tab جدا می‌شوند. این قالب برای کپی مستقیم در Excel مناسب است.

پرامپت:

اطلاعات متن را به TSV تبدیل کن.

ستون‌ها:
نام
شهر
شماره تماس
وضعیت

قواعد:
- سطر اول عنوان ستون‌ها باشد.
- ستون‌ها با Tab جدا شوند.
- توضیح اضافی ننویس.
- مقدار گمشده خالی بماند.

بعد از دریافت خروجی:

  1. متن را کپی کنید.
  2. در سلول A1 اکسل Paste کنید.
  3. اگر ستون‌ها جدا نشدند، از Text to Columns استفاده کنید.
  4. محدوده را انتخاب کنید.
  5. با Ctrl+T آن را به Excel Table تبدیل کنید.

مایکروسافت توصیه می‌کند برای تحلیل بهتر، عنوان ستون‌ها یکتا و غیرخالی باشند و داده‌ها به‌صورت یک جدول منظم با یک ردیف Header تنظیم شوند. راهنمای Analyze Data در Excel

استفاده از Copilot در Excel

Copilot در Excel می‌تواند با دستور زبان طبیعی، Workbook را ویرایش، داده را تحلیل، فرمول تولید و جدول یا نمودار ایجاد کند. دسترسی دقیق به امکانات به نسخه و اشتراک Microsoft 365 وابسته است. شروع کار با Copilot در Excel

پرامپت:

از اطلاعات زیر یک جدول پیگیری پروژه بساز.

ستون‌ها:
وظیفه، مسئول، تاریخ شروع، مهلت، وضعیت و توضیحات.

مقدارهای گمشده را خالی بگذار و آن‌ها را حدس نزن.

تبدیل متن به جدول در Google Sheets

Gemini در نسخه‌های واجد شرایط Google Sheets می‌تواند با استفاده از پرامپت، جدول ایجاد کند. گوگل در مستندات خود نمونه‌هایی مانند ساخت جدول پیگیری پروژه با ستون‌های وظیفه، مسئول، مهلت و وضعیت ارائه کرده است. راهنمای ساخت Spreadsheet با Gemini

گردش‌کار:

  1. Google Sheets را باز کنید.
  2. پنل Gemini را باز کنید.
  3. موضوع جدول را توضیح دهید.
  4. ستون‌ها را مشخص کنید.
  5. جدول پیشنهادی را بررسی کنید.
  6. نتیجه را در Sheet درج کنید.
  7. نوع داده ستون‌ها را اصلاح کنید.

پرامپت نمونه:

متن زیر را به جدول Google Sheets تبدیل کن.

هر سطر یک درخواست مشتری باشد.

ستون‌ها:
تاریخ، مشتری، موضوع، اولویت، مسئول، اقدام بعدی و وضعیت.

اولویت را فقط در صورتی وارد کن که در متن مشخص شده باشد.

تبدیل متن به CSV

CSV برای وارد کردن اطلاعات به Excel، CRM، پایگاه داده و بسیاری از ابزارهای دیگر مناسب است.

نمونه:

name,city,status
آریا,تهران,فعال
بهین,اصفهان,در انتظار

مشکل کاما داخل متن

اگر یکی از مقدارها شامل کاما باشد، باید داخل کوتیشن قرار گیرد:

name,description
محصول الف,"سریع، سبک و مناسب استفاده روزانه"

برای متن فارسی و سازگاری بهتر، فایل CSV را با Encoding برابر UTF-8 ذخیره کنید.

پرامپت CSV

متن زیر را به CSV معتبر تبدیل کن.

قواعد:
- سطر اول نام ستون‌ها باشد.
- خروجی UTF-8 در نظر گرفته شود.
- مقدارهای دارای کاما داخل کوتیشن قرار بگیرند.
- هیچ توضیحی خارج از CSV ننویس.
- مقدار گمشده خالی باشد.
- اطلاعات جدید تولید نکن.

ستون‌ها:
name
city
status

متن:
[متن]

تبدیل متن به JSON

JSON برای API و نرم‌افزار مناسب است.

نمونه:

[
  {
    "name": "آریا",
    "city": "تهران",
    "status": "فعال"
  },
  {
    "name": "بهین",
    "city": "اصفهان",
    "status": "در انتظار"
  }
]

قواعد مهم JSON

  • تمام کلیدها در کوتیشن باشند.
  • رشته‌ها در کوتیشن باشند.
  • بعد از آخرین فیلد کاما نباشد.
  • مقدار گمشده null باشد.
  • نوع عددی داخل کوتیشن قرار نگیرد.
  • تاریخ با قالب مشخص ذخیره شود.
  • ساختار تمام رکوردها یکسان باشد.

پرامپت:

متن را به یک آرایه JSON تبدیل کن.

Schema هر رکورد:
{
  "name": "string",
  "city": "string | null",
  "status": "string | null",
  "registered_at": "YYYY-MM-DD | null"
}

قواعد:
- خروجی فقط JSON معتبر باشد.
- از Markdown code fence استفاده نکن.
- اطلاعات گمشده null باشد.
- تاریخ را فقط زمانی تبدیل کن که مقدار دقیق در متن موجود باشد.
- اطلاعات جدید نساز.

تبدیل متن به جدول HTML

برای نمایش داخل وب‌سایت می‌توانید HTML بخواهید:

<table>
  <thead>
    <tr>
      <th>نام</th>
      <th>شهر</th>
      <th>وضعیت</th>
    </tr>
  </thead>
  <tbody>
    <tr>
      <td>آریا</td>
      <td>تهران</td>
      <td>فعال</td>
    </tr>
  </tbody>
</table>

پرامپت:

اطلاعات متن را به جدول HTML معنایی تبدیل کن.

قواعد:
- از table، thead، tbody، tr، th و td استفاده کن.
- جهت جدول فارسی باشد.
- Style درون‌خطی اضافه نکن.
- اطلاعات جدید تولید نکن.
- خروجی فقط HTML باشد.

استخراج جدول از عکس یا PDF

اگر اطلاعات داخل تصویر یا PDF اسکن‌شده هستند، فرایند دو مرحله دارد:

تصویر یا PDF
      ↓
OCR
      ↓
متن استخراج‌شده
      ↓
تشخیص سطر و ستون
      ↓
تولید جدول
      ↓
کنترل با فایل اصلی

مدل نباید سلول ناخوانا را حدس بزند. برای سلول نامشخص از برچسبی مانند [ناخوانا] استفاده کنید.

پرامپت:

متن زیر با OCR از یک جدول استخراج شده است.

وظیفه:
ساختار احتمالی جدول را بازسازی کن.

قواعد:
- اعداد را تغییر نده.
- مقدار ناخوانا را [ناخوانا] بنویس.
- محل مقدار را حدس نزن.
- اگر تعداد ستون‌ها در یک سطر مشخص نیست، آن سطر را در بخش «نیازمند بررسی» قرار بده.
- خروجی را به جدول Markdown تبدیل کن.

جدول‌های مالی، آماری و علمی باید سلول‌به‌سلول با منبع اصلی مقایسه شوند.

تشخیص نوع داده ستون‌ها

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

نوع دادهنمونه
Stringتهران
Integer۱۲
Decimal۱۲٫۵
Booleanبله یا خیر
Date۱۴۰۵/۰۵/۱۲
DateTime2026-07-23T10:30:00
Enumفعال، غیرفعال، در انتظار
Nullمقدار موجود نیست

پرامپت:

برای جدول پیشنهادی، نوع داده هر ستون را تعیین کن.

خروجی:
- نام ستون
- نام انگلیسی مناسب
- نوع داده
- nullable بودن
- مقادیر مجاز در صورت Enum
- نمونه مقدار
- قاعده اعتبارسنجی

مقدار یا قاعده‌ای را که از متن قابل تعیین نیست، «نیازمند تصمیم» بنویس.

استانداردسازی داده‌ها بعد از تبدیل

متن‌های طبیعی معمولاً مقدارهای یکدستی ندارند.

مثال:

تهران
شهر تهران
TEHRAN
تهران بزرگ

قبل از یکسان‌سازی باید مشخص شود آیا همه این مقادیر واقعاً یک مفهوم دارند یا خیر.

پرامپت:

مقادیر ستون شهر را بررسی کن و مواردی را که احتمالاً به یک شهر اشاره دارند گروه‌بندی کن.

در این مرحله مقدارها را تغییر نده.

خروجی:
- مقدار اصلی
- مقدار پیشنهادی استاندارد
- میزان اطمینان
- دلیل
- نیازمند بررسی انسانی

تغییر خودکار بدون بازبینی ممکن است دو مقدار متفاوت را اشتباه ادغام کند.

حذف رکوردهای تکراری

پرامپت:

رکوردهای جدول را برای یافتن موارد تکراری بررسی کن.

قاعده تشخیص:
- شماره تماس یکسان
یا
- ایمیل یکسان
یا
- ترکیب نام شرکت و شهر یکسان

رکوردها را حذف نکن. فقط گروه‌های تکراری احتمالی و دلیل تشخیص را گزارش بده.

تعریف تکراری بودن باید متناسب با داده مشخص شود. شباهت نام به‌تنهایی معمولاً کافی نیست.

کنترل کیفیت جدول تولیدشده

کنترل تعداد رکوردها

اگر متن شامل ۲۰ محصول است، جدول نیز باید ۲۰ سطر محصول داشته باشد.

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

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

کنترل جابه‌جایی ستون‌ها

در متن‌های پراکنده ممکن است مقدار یک ویژگی به رکورد بعدی منتقل شود.

کنترل اطلاعات گمشده

خالی بودن یک سلول باید به معنی نبود اطلاعات باشد، نه فراموش شدن استخراج.

کنترل رکورد تکراری

ممکن است یک مورد در چند بخش متن تکرار شده باشد.

کنترل نوع داده

ستون عددی نباید شامل متن‌های نامرتبط باشد.

نگهداری متن منبع

برای کاربردهای مهم، در کنار هر رکورد بخشی از متن منبع یا شماره پاراگراف را نگه دارید تا بررسی آسان‌تر شود.

افزودن ستون منبع

یک روش مناسب برای قابلیت پیگیری، اضافه کردن ستون source است.

{
  "company": "آریا",
  "city": "تهران",
  "status": "فعال",
  "source": "paragraph_2"
}

پرامپت:

متن به پاراگراف‌های شماره‌دار تقسیم شده است. هنگام استخراج هر رکورد، شماره پاراگراف منبع را در ستون source قرار بده.

اگر یک رکورد از چند پاراگراف ساخته شده، تمام شماره‌ها را در آرایه source ثبت کن.

پردازش متن‌های طولانی

برای متن طولانی بهتر است:

  1. متن را به بخش‌های منطقی تقسیم کنید.
  2. هر بخش را جداگانه استخراج کنید.
  3. خروجی‌ها را در یک ساختار ثابت نگه دارید.
  4. جدول‌ها را ادغام کنید.
  5. رکوردهای تکراری را بررسی کنید.
  6. کنترل نهایی روی تعداد و منبع انجام دهید.

نباید ستون‌های هر بخش متفاوت باشند. Schema را قبل از پردازش ثابت کنید.

ساخت ابزار تبدیل متن به جدول با API درواره

معماری پیشنهادی:

متن کاربر
    ↓
انتخاب نوع رکورد و ستون‌ها
    ↓
API هوش مصنوعی درواره
    ↓
خروجی JSON
    ↓
اعتبارسنجی Schema
    ↓
DataFrame
    ↓
CSV یا Excel

درواره در این کاربرد زیرساخت API هوش مصنوعی را فراهم می‌کند. تبدیل JSON به Excel، ذخیره فایل و رابط کاربری باید در برنامه شما پیاده‌سازی شود.

نصب کتابخانه‌ها

pip install openai pandas openpyxl

تنظیم کلید API

Linux و macOS:

export DARVAREH_API_KEY="YOUR_API_KEY"

PowerShell:

$env:DARVAREH_API_KEY="YOUR_API_KEY"

نمونه کد کامل

import json
import os
from pathlib import Path

import pandas as pd
from openai import OpenAI


client = OpenAI(
    api_key=os.environ["DARVAREH_API_KEY"],
    base_url="https://api.darvareh.ir/v1",
)


source_text = """
شرکت آریا از تهران در طرح سالانه ثبت‌نام کرده است.
مسئول ارتباط خانم احمدی و وضعیت حساب فعال است.

شرکت بهین از اصفهان در طرح ماهانه ثبت‌نام کرده است.
مسئول ارتباط آقای رضایی است. وضعیت حساب اعلام نشده است.
"""


prompt = f"""
متن زیر را به آرایه JSON تبدیل کن.

هر رکورد باید این ساختار را داشته باشد:
{{
  "company": "string",
  "city": "string | null",
  "billing_period": "string | null",
  "contact_person": "string | null",
  "status": "string | null"
}}

قواعد:
- فقط از اطلاعات متن استفاده کن.
- مقدارهای گمشده null باشند.
- هیچ اطلاعاتی را حدس نزن.
- نام کلیدها را تغییر نده.
- هر شرکت فقط یک رکورد داشته باشد.
- خروجی فقط JSON معتبر باشد.
- از Markdown code fence استفاده نکن.

متن:
{source_text}
"""


response = client.chat.completions.create(
    model="YOUR_MODEL_ID",
    messages=[
        {
            "role": "system",
            "content": (
                "شما متخصص استخراج اطلاعات ساختاریافته هستید. "
                "نباید مقدار گمشده را حدس بزنید."
            ),
        },
        {
            "role": "user",
            "content": prompt,
        },
    ],
    temperature=0,
)


raw_output = response.choices[0].message.content.strip()

if raw_output.startswith("```"):
    raw_output = raw_output.replace("```json", "")
    raw_output = raw_output.replace("```", "").strip()


records = json.loads(raw_output)

required_keys = {
    "company",
    "city",
    "billing_period",
    "contact_person",
    "status",
}


for index, record in enumerate(records):
    missing_keys = required_keys - set(record.keys())
    extra_keys = set(record.keys()) - required_keys

    if missing_keys:
        raise ValueError(
            f"رکورد {index} کلیدهای لازم را ندارد: "
            f"{missing_keys}"
        )

    if extra_keys:
        raise ValueError(
            f"رکورد {index} کلیدهای اضافی دارد: "
            f"{extra_keys}"
        )


dataframe = pd.DataFrame(records)

Path("output").mkdir(
    parents=True,
    exist_ok=True,
)

dataframe.to_csv(
    "output/companies.csv",
    index=False,
    encoding="utf-8-sig",
)

dataframe.to_excel(
    "output/companies.xlsx",
    index=False,
)

print(dataframe)
print("فایل‌های CSV و Excel ساخته شدند.")

در این نمونه:

  • متن فارسی به API ارسال می‌شود.
  • خروجی به شکل JSON دریافت می‌شود.
  • ساختار تمام رکوردها بررسی می‌شود.
  • داده به DataFrame تبدیل می‌شود.
  • فایل CSV با Encoding مناسب فارسی ساخته می‌شود.
  • فایل Excel نیز تولید می‌شود.
  • به‌جای YOUR_MODEL_ID باید شناسه مدل درواره قرار گیرد.

DataFrame در Pandas یک ساختار دوبعدی دارای سطر و ستون است و می‌تواند از فهرست Dictionaryها ساخته شود. مستندات رسمی Pandas DataFrame

افزودن اعتبارسنجی نوع داده

در یک پروژه واقعی فقط وجود کلیدها کافی نیست. بهتر است موارد زیر نیز کنترل شوند:

  • company رشته خالی نباشد.
  • شهر از نوع رشته یا null باشد.
  • تاریخ با قالب مشخص مطابقت داشته باشد.
  • مقدار وضعیت از فهرست مجاز انتخاب شود.
  • قیمت منفی نباشد.
  • تعداد باید عدد صحیح باشد.
  • رکوردها بیش از محدودیت تعیین‌شده نباشند.
  • متن خروجی در ستون عددی قرار نگیرد.

نمونه فهرست وضعیت مجاز:

allowed_statuses = {
    "فعال",
    "غیرفعال",
    "در انتظار",
    None,
}

for record in records:
    if record["status"] not in allowed_statuses:
        raise ValueError(
            f'وضعیت نامعتبر: {record["status"]}'
        )

استخراج همراه با شواهد

برای کاربردهای حساس‌تر، هر فیلد می‌تواند متن منبع خود را داشته باشد:

{
  "company": {
    "value": "آریا",
    "evidence": "شرکت آریا از تهران"
  },
  "city": {
    "value": "تهران",
    "evidence": "شرکت آریا از تهران"
  }
}

این ساختار حجم خروجی را افزایش می‌دهد، اما بررسی انسانی را آسان‌تر می‌کند.

اشتباهات رایج در تبدیل متن به جدول

مشخص نکردن مفهوم سطر

مدل نمی‌داند هر سطر باید یک فرد، محصول، وظیفه یا موضوع باشد.

واگذار کردن انتخاب تمام ستون‌ها به مدل

برای کارهای مهم، Schema را خودتان تعیین یا حداقل قبل از استخراج تأیید کنید.

اجازه دادن به حدس مقادیر

صریحاً بنویسید مقدارهای گمشده باید خالی، null یا «مشخص نشده» باشند.

درخواست خروجی Excel مستقیم از مدل متنی

مدل معمولاً متن، JSON یا CSV تولید می‌کند. ساخت فایل واقعی Excel باید در ابزار یا کد انجام شود.

استفاده از جدول Markdown برای پردازش نرم‌افزاری

Markdown برای نمایش مناسب است، اما JSON برای اعتبارسنجی و توسعه نرم‌افزار انتخاب بهتری است.

کنترل نکردن اعداد

مدل ممکن است جداکننده هزارگان، واحد یا شکل اعداد را تغییر دهد.

پردازش یکجای متن بسیار طولانی

متن را بخش‌بندی کنید و Schema تمام بخش‌ها را ثابت نگه دارید.

حذف متن منبع

بدون منبع، بررسی دلیل استخراج هر مقدار دشوار می‌شود.

ترکیب استخراج و تحلیل

ابتدا داده را استخراج کنید. تحلیل، دسته‌بندی یا امتیازدهی را در مرحله بعد انجام دهید.

چک‌لیست نهایی

  • آیا هر سطر مفهوم مشخصی دارد؟
  • آیا ستون‌ها از قبل تعیین شده‌اند؟
  • آیا نوع داده ستون‌ها مشخص است؟
  • آیا مقدارهای گمشده قاعده مشخص دارند؟
  • آیا مدل از حدس زدن منع شده است؟
  • آیا تعداد رکوردها با متن منبع مطابقت دارد؟
  • آیا نام‌ها درست استخراج شده‌اند؟
  • آیا عددها تغییر نکرده‌اند؟
  • آیا تاریخ‌ها درست هستند؟
  • آیا مقدارها جابه‌جا نشده‌اند؟
  • آیا رکورد تکراری وجود ندارد؟
  • آیا منبع هر رکورد قابل پیگیری است؟
  • آیا JSON معتبر است؟
  • آیا تعداد ستون‌های CSV یکسان است؟
  • آیا Encoding فایل CSV برای فارسی مناسب است؟
  • آیا عنوان ستون‌ها یکتا هستند؟
  • آیا فایل Excel درست باز می‌شود؟
  • آیا جدول توسط کاربر آشنا با داده بررسی شده است؟

سؤالات متداول

چگونه متن را به جدول تبدیل کنیم؟

ابتدا مشخص کنید هر سطر نماینده چه چیزی است و ستون‌ها چه هستند. سپس متن را همراه با Schema و قاعده مقدارهای گمشده به مدل بدهید و خروجی Markdown، CSV یا JSON دریافت کنید.

آیا هوش مصنوعی می‌تواند متن فارسی را به جدول تبدیل کند؟

بله. مدل‌های زبانی می‌توانند اطلاعات فارسی را استخراج کنند. کیفیت نتیجه به وضوح متن، انتخاب ستون‌ها و دستورهای مربوط به اطلاعات گمشده وابسته است.

چگونه متن را در Word به جدول تبدیل کنیم؟

می‌توانید از Copilot و گزینه Visualize as a Table استفاده کنید یا متن را با Tab جدا کرده و از Insert، Table و Convert Text to Table کمک بگیرید.

چگونه متن را به Excel تبدیل کنیم؟

از مدل بخواهید خروجی TSV، CSV یا JSON تولید کند. TSV را می‌توان مستقیماً در Excel Paste کرد. JSON و CSV نیز با پایتون یا ابزارهای وارد کردن داده به فایل Excel تبدیل می‌شوند.

بهترین قالب برای تبدیل متن به جدول چیست؟

برای نمایش، Markdown مناسب است. برای Excel، CSV یا TSV مناسب‌اند. برای API و نرم‌افزار، JSON ساختاریافته انتخاب بهتری است.

آیا هوش مصنوعی می‌تواند جدول را از عکس استخراج کند؟

بله، اما ابتدا باید OCR یا مدل بینایی محتوای تصویر را استخراج کند. جدول نهایی باید با تصویر اصلی مقایسه شود، مخصوصاً اگر شامل عدد، مبلغ یا آمار باشد.

چگونه جلوی تولید اطلاعات اشتباه را بگیریم؟

ستون‌ها را مشخص کنید، مدل را به متن منبع محدود کنید، مقدار گمشده را null قرار دهید، شواهد هر مقدار را نگه دارید و خروجی را با Schema و قواعد برنامه‌نویسی اعتبارسنجی کنید.

آیا درواره ابزار آماده جدول‌سازی است؟

درواره یک نرم‌افزار آماده Word یا Excel نیست. درواره زیرساخت API هوش مصنوعی را ارائه می‌دهد و توسعه‌دهندگان می‌توانند با استفاده از آن، قابلیت استخراج اطلاعات و تبدیل متن به JSON، CSV یا جدول را به نرم‌افزار خود اضافه کنند.

جمع‌بندی

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

گردش‌کار پیشنهادی:

  1. مشخص کنید هر سطر چه مفهومی دارد.
  2. ستون‌های لازم را تعریف کنید.
  3. نوع داده هر ستون را تعیین کنید.
  4. قاعده مقدارهای گمشده را مشخص کنید.
  5. متن را به JSON یا قالب ساختاریافته تبدیل کنید.
  6. خروجی را اعتبارسنجی کنید.
  7. آن را به CSV، Excel، Word یا HTML تبدیل کنید.
  8. رکوردها را با متن منبع تطبیق دهید.
  9. اطلاعات مبهم را برای بررسی انسانی جدا کنید.
  10. نسخه نهایی را وارد فرایند کاری خود کنید.

اگر قصد دارید قابلیت استخراج اطلاعات، تبدیل متن به جدول یا ساخت خروجی JSON و CSV را به نرم‌افزار خود اضافه کنید، می‌توانید از API هوش مصنوعی درواره استفاده کنید.

برای انتخاب مدل مناسب و مشاهده اطلاعات به‌روز هزینه، صفحه مدل‌ها و قیمت‌های درواره را ببینید.

مقالات مرتبط

برای مطالعه شرایط استفاده و محدودیت‌های مسئولیت، صفحه «سلب مسئولیت» را مشاهده کنید.

Read more