قواميس تستضيفها وتطوّرها بنفسك
شغّل قواميس الإنجليزية بجانب تطبيقك: ابدأ بمدخلات مجموعة بيانات المشروع الخاصة البالغ عددها 300 000، وأضف Wiktionary أو WordNet أو OpenGloss، أو أنشئ قاموسك. أنشئ نسخًا متفرعة وعدّل البيانات مع حفظ مصادر الكلمات وتراخيصها وسجلها. اقرأها عبر واجهة API عامة أو حزم SDK لـ Node.js وPython أو صفحات الكلمات.
التثبيت بأمر واحد
يكفي ملف compose وقالب متغيرات البيئة: تُسحب الصور من GitHub Container Registry، ويبدأ Postgres معها، ويحمّل القاموس نفسه عند التشغيل الأول.
mkdir vocab-bloom-hub && cd vocab-bloom-hub
curl -fsSLO https://raw.githubusercontent.com/Fristail27/vocab-bloom-hub/main/docker-compose.yml
curl -fsSL https://raw.githubusercontent.com/Fristail27/vocab-bloom-hub/main/.env.example -o .env
# edit .env: ADMIN_PASSWORD, POSTGRES_PASSWORD
docker compose up -d
curl -s localhost:3010/api/ready # {"status":"ok"} once the dictionary is in
ما الذي تحصل عليه
واجهة API عامة
مُرقَّمة الإصدارات، للقراءة فقط، دون تسجيل دخول: بحث يتسامح مع الأخطاء الإملائية، وكلمات رئيسية بمعانيها وصيغها وترجماتها ومرادفاتها وأضدادها، واستعلام دفعي، وقوائم مقسّمة إلى صفحات بمؤشر، ومدخل عشوائي — كل إجابة في غلاف واحد، ومخزّنة مؤقتًا بواسطة ETag.
حزم SDK
عملاء بأنواع محدَّدة لـ Node.js / TypeScript وPython مولَّدون من مستند OpenAPI نفسه: دالة لكل نقطة نهاية، وتكرار بالمؤشر، وأخطاء بأنواع محدَّدة، وذاكرة تخزين مؤقت بـ ETag، وإعادة محاولة اختيارية، وDataFrame للدفاتر التفاعلية.
واجهة الإدارة
حرّر الكلمات والمعاني والترجمات والمرادفات والأضداد في أي مجموعة بيانات من المتصفح — يُحفظ كل تغيير في سجل يراه القراء — وراجع التصحيحات التي يرسلونها، وتابع الإحصاءات، وثبّت مجموعات البيانات واستوردها وصدّرها من بطاقاتها.
مجموعات البيانات
يُنشر قاموس المشروع على HuggingFace برخصة CC BY 4.0. أضف Wiktionary أو WordNet أو OpenGloss بالتنزيل على الخادم أو بالرفع اليدوي. أنشئ مجموعة فارغة أو نسخة متفرعة من مجموعة مثبتة، وحدّد إصدارها وترخيص المساهمات، مع حفظ مصادر الكلمات وسجل تعديلاتها. تُقرأ المجموعات منفصلة.
مصمَّم للمشغّلين
مسابير الصحة والجاهزية، وإيقاف سلس، وترحيلات عند التشغيل، ومقاييس Prometheus، وسجلات JSON منظّمة بمعرّف للطلب — كل ما تحتاجه خدمة ليشغّلها شخص آخر.
البحث
مستويات للمطابقة التامة والبادئة والتقريبية والترجمة على فهارس Postgres: القراءات الأكثر تكرارًا تُجاب خلال ميلي ثوانٍ على القاموس الكامل.
حزمتا SDK، عقد واحد
كلا العميلين مولَّد من مستند OpenAPI المُودَع في المستودع لواجهة API العامة، فلا ينحرفان أبدًا عن الخادم.
Node.js / TypeScript
import { VocabBloomClient } from '@vocab-bloom-hub/client';
const client = new VocabBloomClient({ baseUrl: 'https://your-instance.example/api' });
const { data } = await client.search({ search: 'runing', limit: 5 }); // typo tolerant
const run = await client.word('run'); // every part of speech, forms, meanings, translations
for await (const word of client.iterateWords({ part_of_speech: ['verb'], word_level: ['b1'] })) {
console.log(word.word);
}
Python
from vocab_bloom_hub import VocabBloomClient
client = VocabBloomClient("https://your-instance.example/api")
hits = client.search("runing", limit=5) # typo tolerant
run = client.word("run") # forms, meanings, translations
for word in client.iter_words(part_of_speech=["verb"], word_level=["b1"]):
print(word.word)
df = client.words_dataframe(part_of_speech=["noun"]) # pip install "vocab-bloom-hub[pandas]"
البيانات والرخصة
الشيفرة برخصة MIT. أما بيانات قاموس المشروع — التي تقدّمها واجهة API، وتُصدَّر كمجموعات بيانات، وتُنشر على HuggingFace — فهي برخصة CC BY 4.0: حرة الاستخدام والتعديل، تجاريًا أيضًا، مع نسب العمل إلى مصدره. وهي في معظمها مولَّدة بنماذج لغوية كبيرة (LLM) ولم يراجعها بشر؛ اقرأ ما يعنيه ذلك قبل الاعتماد عليها. ومجموعة البيانات من مصدر آخر تحتفظ برخصة ذلك المصدر — Wiktionary يشترط المشاركة بالمثل، وقواميس WordNet تشترط إبقاء إشعارها على كل نسخة — وتعرض النسخة شروط مجموعة البيانات التي تقدّمها؛ اقرأها قبل أن تبني عليها. يحتوي OpenGloss أيضًا على نص مولّد: CC BY 4.0 مع شروط WordNet 3.0 الإضافية للكلمات المحددة. قد تحتفظ الكلمة بعدة تراخيص للمصادر والمساهمات؛ النسخ أو إنشاء نسخة متفرعة لا يستبدلها.