تكامل المطور والذكاء الاصطناعي

قم بتوصيل FTIR.fun بأي أداة أو تطبيق AI

امنح مساعد الذكاء الاصطناعي أو شفرتك الخاصة وصولًا مباشرًا إلى 320,000+ من الأطياف المرجعية، واستدلال القمم القائم على الرسم البياني المعرفي، والتفسير المدعوم بالمراجع العلمية. اختر إحدى الطرق الثلاث للاتصال — MCP لمساعدي الذكاء الاصطناعي، أو REST API للشفرة، أو Skill جاهزة للمنصات التي لا تتطلب برمجة. يتضمن كل مسار أدناه تعليمات خطوة بخطوة مكتوبة للمستخدمين الجدد.

مدرج في

قبل أن تبدأ — احصل على مفتاح API الخاص بك

يستخدم كل من MCP وREST API مفتاح API واحدًا خاصًا بـ FTIR.fun. ويستخدم Coze/Doubao مفتاح خدمة يضبطه ناشر الإضافة، لذلك يعمل المستخدمون النهائيون من خلال الإضافة دون لصق مفتاح شخصي. يستغرق الحصول على مفتاح شخصي نحو دقيقة واحدة:

  1. تسجيل الدخول إلى FTIR.fun أنشئ حسابًا مجانيًا (تتضمن الحسابات الجديدة أرصدة تجريبية مجانية).
  2. افتح لوحة مفاتيح API اذهب إلى الحساب → مفاتيح API وانقر على إنشاء.
  3. عرض أو نسخ مفتاح API الخاص بك المفتاح الكامل (يبدأ بـ ftir_) يظل متاحًا في لوحة تحكم مفاتيح API. يمكنك العودة إلى هناك لعرضه أو نسخه أو إبطاله.
🔑 هل أنت مستعد؟ افتح لوحة مفاتيح API في علامة تبويب جديدة، ثم عد واتبع المسار الذي اخترته أعلاه.

الخطوة 1 - أي اتصال مناسب لك؟

تتصل المسارات الثلاثة جميعها بالمحرك نفسه: 320,000+ من الأطياف، والاستدلال عبر الرسم البياني للمعرفة، والاستشهادات العلمية. لا تحتاج إلا إلى مسار واحد. اختر المسار الذي يتوافق مع طريقة عملك؛ يُعد MCP خيارًا ملائمًا لمستخدمي مساعدات الذكاء الاصطناعي.

ما يمكن أن يفعله ذكاؤك الاصطناعي فعليًا

توفّر خدمات MCP وREST الموحّدة كتالوج عمليات FTIR.fun نفسه. وقد تتلقى مفاتيح API نطاقًا أصغر من القدرات، بينما يمكن للإعلانات الخاصة بالمنصة أن تنشر عمدًا مجموعة فرعية فقط. تشترك العمليات أدناه في خدمات FTIR.fun نفسها.

مهمة أداة MCP نقطة نهاية REST قل هذا لذكائك الاصطناعي
قراءة ملف جهاز parse_ftir_spectrum POST /parse-spectrum قم بتحليل sample.spc وسرد القمم المكتشفة.
تحويل البيانات الأصلية وحفظ البيانات الوصفية convert_native_spectrum POST /native-spectrum/convert تحويل sample.spa إلى JDX والحفاظ على البيانات الوصفية المصدرية.
تحديد طيف غير معروف analyze_ftir_spectrum POST /ftir/analyze_spectrum تحديد أي بوليمر هذا الطيف.
تقديم تقرير ثلاثي المحاور كامل submit_ftir_report POST /ftir/reports أرسل sample.spa للحصول على تقرير كامل في وضع ATR.
اسأل واسترجع ذلك التقرير get_ftir_report_status GET /ftir/reports/{task_id} تحقق من مهمة التقرير وأعطني الرابط عند الانتهاء.
شرح القمم explain_peaks POST /ftir/explain_peak_assignments ماذا تشير القمم عند 1715 و1450 سم-1؟
ابحث عن طيف مرجعي معروف find_spectra POST /ftir/find_spectra ابحث عن أطياف مرجعية للبوليستيرين.
أعد فتح نتيجة سابقة fetch_result GET /ftir/result/{result_num} احصل على النتيجة 20260528100755416137536.
🎓 تخصيص القمم الأكاديمية — بالنسبة للعينات ذات التركيب المعروف، تُعيّن قدرة FTIR.fun REST/MCP المتقدمة كل قمة مقاسة مع أدلة موثقة في المراجع. تبلغ تكلفة كل إرسال 30 نقطة، أو يكون مجانيًا مع اشتراك نشط؛ ولا تُفرض رسوم على استعلامات الحالة. صف المهمة بشكل طبيعي (على سبيل المثال: "خصص جميع قمم FTIR المقاسة لهذا الطيف؛ العينة معروفة PMMA؛ أرسل التقرير بالبريد الإلكتروني إلي") — يوفر العميل الملف ولا تحتاج أبدًا إلى إنشاء JSON أو Base64 بنفسك. تعيد النتائج المكتملة حالة JSON وعناوين التقارير المحمية؛ لا يتم كشف التقارير على مسار تنزيل عام.

امتدادات أسماء ملفات الطيف المدعومة (36): .spa, .spc, .sp, .abs, .irf, .irs, .dt, .jws, .jdx, .dx, .asc, .dpt, .opju, .opus, .ispd, .[0-9]+, .xlsx, .xls, .ods, .csv, .dat, .txt, .tsv, .json, .tab, .a2r, .asp, .spe, .map, .bsp, .spg, .srs, .smf, .ird, .fsm, .mat. احتفظ بامتداد اسم الملف الأصلي. الملفات غير المدعومة أو غير القابلة للقراءة تُرجع supported_extensions وsupported_formats. قيم sampling_mode الصالحة هي قرص KBr، بخار، مذيب، غشاء رقيق، معلق بارافين، ATR، انعكاس منتشر، أشعة تحت الحمراء الدقيقة، وأخرى. النفاذية ليست قيمة صالحة.

مثال على استجابة find_spectra

استجابة find_spectra
{
  "success": true,
  "query": "polystyrene",
  "match_mode": "synonym",
  "match_count": 3,
  "summary": "Found 3 reference spectrum candidates for 'polystyrene'.",
  "results": [
    {"num": 555, "spectrum_number": 555, "name": "PS/PPO",
     "cas": "-", "source_type": "instrument_import",
     "peaks": [697, 756, 1028, ...], "x": [...], "y": [...]}
  ]
}

مثال على استجابة explain_peaks

استجابة explain_peaks
{
  "success": true,
  "search_mode": "peak_explanation",
  "peak_explanations": [
    {"peaks_cm1": [1715, 1450],
     "assignment": "1715 cm-1 suggests C=O stretching (ester or carboxylic acid)...",
     "evidence_type": "llm_general_knowledge"}
  ],
  "summary": "Peak explanation based on general FTIR knowledge..."
}

الحصول على التقرير الكامل (غير متزامن)

تُرجع الفحوصات السريعة (analyze_spectrum) النتيجة فورًا. ويعمل التقرير الكامل ذي المحاور الثلاثة في الخلفية ويستغرق عادةً من 30 إلى 90 ثانية. احتفظ بـ task_id وأجرِ استطلاعًا له بدلًا من إعادة الإرسال.

  1. إرسال استدع submit_ftir_report (MCP) أو POST /ftir/reports (REST). ستحصل على task_id و result_num محجوز. حقل file_base64 مطلوب؛ الحقول الأخرى (sampling_mode, prior_context, language_code, sample_name, sample_order_no) اختيارية.
    مثال على الإرسال (REST)
    curl -X POST https://ftir.fun/ftir/reports \
      -H "X-API-Key: ftir_your_key_here" \
      -H "Content-Type: application/json" \
      -d '{"file_base64": "V2F2ZW51bWJlci...", "filename": "sample.spa", "sampling_mode": "ATR", "language_code": "en"}'
    إرسال الرد
    {"success": true, "task_id": "rpt_abc123...", "result_num": "20260713...",
     "status": "queued", "status_url": "https://ftir.fun/ftir/reports/rpt_abc123..."}
  2. استطلاع رأي اتصل get_ftir_report_status (MCP) أو GET /ftir/reports/{task_id} كل 5-10 ثوانٍ حتى يصبح completed true. تتضمن الاستجابة المكتملة report_url وكائن report (محتوى النتيجة المنظم، مع report_view التفصيلي بداخله) و result_num.
    مثال على الاستقصاء
    curl https://ftir.fun/ftir/reports/rpt_abc123 \
      -H "X-API-Key: ftir_your_key_here"
    رد الاستقصاء (قيد التقدم)
    {"success": true, "task_id": "rpt_abc123", "status": "running", "progress": 45, "completed": false}
    استجابة الاستقصاء (مكتمل)
    {"success": true, "task_id": "rpt_abc123", "status": "completed", "completed": true,
     "result_num": "20260713...", "report_url": "https://ftir.fun/outputdata/?num=20260713..."}
  3. افتح التقرير النهائي افتح عنوان URL الكامل https://ftir.fun/outputdata/?num={result_num} في متصفح لعرض صفحة النتائج ثلاثية المحاور الكاملة التي يعرضها FTIR.fun.
⚠️ احتفظ بـ task_id واستمر في الاستطلاع حتى يكتمل أو يفشل. تؤدي عمليات الإرسال المكررة أثناء الانتظار في قائمة الانتظار أو التشغيل إلى إهدار النقاط.

استكشاف الأخطاء وإصلاحها

ما تراه ماذا يعني ماذا تفعل
يفتح العميل صفحة تفويض المتصفح، أو يقول أن صفحة التفويض غير موجودة. عميلك يستخدم إدخال خادم قديم بنمط OAuth. FTIR.fun لا تستخدم OAuth — فقط مفتاح API. احذف إدخال خادم ftirfun القديم، والصق التكوين الدقيق من هذه الصفحة، وأعد تحميل العميل، وابدأ ftirfun مرة أخرى.
401 (MCP) / 401 invalid_api_key (REST) مفتاح API مفقود أو منتهي الصلاحية أو تم إلغاؤه أو لصقه بشكل غير صحيح. أعد تشغيل الخادم والصق المفتاح الخام فقط (يبدأ بـ ftir_). إنشاء مفتاح جديد من لوحة تحكم مفاتيح API إذا لزم الأمر.
يبدأ الخادم ولكن لا تظهر أدوات. العميل لم يقم بتحديث الكتالوج الخاص به، أو التكوين يستخدم اسم مفتاح خاطئ. بالنسبة لـ VS Code، تأكد من أن mcp.json يستخدم servers (وليس mcpServers). ثم أوقف وأعد تشغيل ftirfun، أو أعد تحميل النافذة.
403 insufficient_balance الحساب لا يحتوي على نقاط كافية لهذا التحليل. تحقق من رصيدك أو اشتراكك في FTIR.fun، ثم حاول مرة أخرى.
429 rate_limit_exceeded تحليل REST وتحليله يسمح بـ 60 طلبًا في الدقيقة لكل مفتاح API؛ قراءات نتيجة REST وحالة التقرير تستخدم حاوية منفصلة تبلغ 120 طلبًا في الدقيقة؛ MCP يسمح بـ 60 استدعاء في الدقيقة لكل مفتاح API وأداة. انتظر فترة إعادة المحاولة التي أبلغتها الأداة قبل الاتصال مرة أخرى.
يبقى التقرير في قائمة الانتظار أو قيد التشغيل. تعمل التقارير الكاملة بشكل غير متزامن وتستغرق وقتًا أطول من الفحص السريع. احتفظ بنفس task_id وأجرِ الاستطلاع. إذا فقدت task_id، فاتصل بـ GET /ftir/tasks لسرد مهامك الأخيرة والعثور عليه مجددًا.
422 أو missing_input نص الطلب يفتقر إلى الحقول المطلوبة أو يحتوي على تنسيق غير صحيح. بالنسبة إلى analyze_spectrum، يجب عليك تقديم واحد على الأقل من: peaks أو query أو file_base64. تحقق من أن JSON الخاص بك صالح، وأن Content-Type هو application/json، وأن الحقول المطلوبة موجودة. راجع أمثلة الطلبات أعلاه.
413 file_too_large يتجاوز ملف الطيف المرفوع حد الحجم. قم بتصدير ملف أصغر أو استخدم فقط مواقع القمم عبر حقل spectrum.peaks.

هل أنت مستعد للبناء؟

مرجع REST الكامل يحتوي على كل نقطة نهاية، تنسيقات الطلب والاستجابة، التحقق من الهوية، حدود المعدل، رموز الأخطاء، تعريفات أداة MCP، وأمثلة الكود في Python و curl.

تقديم المتطلبات نموذج