> For the complete documentation index, see [llms.txt](https://overleaf-pro.ayaka.space/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://overleaf-pro.ayaka.space/latex/ar/allghat/01-multilingual-typesetting-on-overleaf-using-polyglossia-and-fontspec.md).

# الطباعة متعددة اللغات على Overleaf باستخدام polyglossia وfontspec

## مقدمة

تقدّم هذه المقالة نظرة عامة على تنضيد المستندات متعددة اللغات على Overleaf باستخدام المصرّف XeLaTeX (أو LuaLaTeX) بالاقتران مع `fontspec` و `polyglossia` حزم LaTeX.

بالنسبة للعديد من المستخدمين، إن لم يكن معظمهم، فإن اختيارهم الافتراضي لمحرك TeX هو `pdfTeX`، والذي، على خلاف XeTeX وLuaTeX، لا يمتلك قدرة مدمجة على قراءة [UTF-8](https://en.wikipedia.org/wiki/UTF-8) الملفات النصية المرمّزة. إن استخدام pdfTeX يجعل تنضيد بعض اللغات في LaTeX معقّدًا جدًا، خاصة تلك التي لا تستخدم كتابةً قائمة على اللاتينية. بعض الحزم—مثل [`inputenc`, `fontenc` و](/latex/ar/allghat/05-arabic.md) [`arabtex`](/latex/ar/allghat/05-arabic.md)—توفر دعمًا لـ pdfTeX لتنضيد اللغات والكتابات غير اللاتينية، لكن قد لا تكون جميع الرموز والأحرف مدعومة أو معروضة بشكل صحيح في ملف PDF الناتج، حتى لو كنت قد استخدمت خيار `utf8` أو `utf8x` مع `inputenc`.

للحصول على مناقشة متعمقة حول UTF-8 وترميز Unicode ومحركي XeTeX/LuaTeX، فإن مقال Overleaf [Unicode وUTF-8 والنص متعدد اللغات: مقدمة](/latex/ar/mqalat-mtamqh/51-unicode-utf-8-and-multilingual-text-an-introduction.md) قراءة شيقة للغاية.

## هنا يأتي XeTeX وLuaTeX

يمكن لمحركي XeTeX وLuaTeX قراءة/معالجة النص المرمّز بـ UTF-8 مباشرةً؛ وبالتالي فهما يقدّمان دعمًا أصليًا لـ Unicode—كما يمكنهما أيضًا [العمل مباشرةً مع خطوط TrueType وOpenType](/latex/ar/alkhtwt/03-xelatex.md) مباشرةً. هذه الخصائص تجعلهما خيارًا طبيعيًا لتنضيد المستندات متعددة اللغات أو غير اللاتينية في LaTeX، وإنتاج مخرجات مثل هذه:

![](/files/41dc15f2fd9fb7262a01d2987c79fbdfc603152f) ![](/files/a5f9e8d2e7f2fbd3706b7c70d06f5390e89feb67) ![](/files/3bc3d96d00047a3cf8ad58ed7f90b8425f334a8a)

يمكن العثور على هذه الأمثلة في معرض Overleaf: [كيفية كتابة نص متعدد اللغات بكتابات مختلفة في LaTeX على Overleaf](https://www.overleaf.com/latex/examples/how-to-write-multilingual-text-with-different-scripts-in-latex/wfdxqhcyyjxz) و [شكر متعدد اللغات](https://www.overleaf.com/latex/templates/multilingual-thank-you/wjmrnnqkstyf).

إذا كنت تبحث عن تنضيد الصينية واليابانية والكورية، فاطّلع على هذه المقالات:

* [الصينية](/latex/ar/allghat/06-chinese.md)
* [اليابانية](/latex/ar/allghat/11-japanese.md)
* [الكورية](/latex/ar/allghat/12-korean.md)

لا يزال Xe(La)TeX مفيدًا لهذه اللغات، لكن تتوفر محركات TeX أكثر تخصصًا، وتحديدًا [المصممة لتنضيد لغات CJK](/latex/ar/mzyd-mn-almwdhwaat/45-tex-primitives-listed-by-cjk-tex-engine.md)—مثل [pTeX](https://ctan.org/pkg/ptex?lang=en) لتنضيد اليابانية.

لاحظ أنه إذا بدا أن المؤشر يتصرف بشكل غير طبيعي أثناء تحرير نص بلغات معينة على Overleaf، فقد ترغب في النقر على زر Overleaf **القائمة**  (الموجود أعلى قائمة ملفات المشروع) وتغيير خيار “Font Family”. كما يمكنك أيضًا تجربة [تغيير تفضيلات الخط أحادي المسافة في متصفحك](https://www.howtogeek.com/208552/how-to-change-the-default-fonts-in-your-web-browser/) أو استخدام عرض النص المنسق من Overleaf بدلًا من ذلك. ومع ذلك، وقت كتابة هذا النص، قد لا يكون عرضا Source وRich Text يدعمان (بعد) تحرير النص من اليمين إلى اليسار دعمًا كاملًا على مستوى الوظائف التي نسعى إلى تحقيقها.

## تغيير مفسّر المشروع

ال `fontspec` و `polyglossia` تتطلب الحزم المصرّف XeLaTeX أو LuaLaTeX، لذا ستحتاج إلى إعداد مشروع Overleaf الخاص بك لاستخدام أحد هذين المصرّفين. يمكن العثور على تعليمات مفصلة في مقالنا [اختيار مُصرّف LaTeX](/latex/ar/mzyd-mn-almwdhwaat/08-choosing-a-latex-compiler.md) لكن هنا مقطع فيديو قصير يوضح كيفية ضبط المصرّف لمشروعك:

{% embed url="<https://videos.ctfassets.net/nrgyaltdicpt/2HDpWlJuNR50hknbpxfQdu/93cdc17ef2c6c77249a1c7c76b34a817/choosingcompiler.mp4>" %}

بمجرد أن تصبح عملية الترجمة باستخدام XeLaTeX أو LuaLaTeX، يمكنك (بل ينبغي أن) إزالة `inputenc` و `fontenc` الحزم من مقدمة ملف .tex لأن هذه المحركات القادرة على Unicode ستفترض أن ملفات الإدخال (النص) مرمّزة بـ UTF-8. وبالمناسبة، تُحوَّل جميع ملفات النص المرفوعة إلى Overleaf إلى UTF-8، لذا ينبغي عادةً استخدام `utf8` مع `inputenc` عند العمل مع المصرّفين pdfLaTeX وLaTeX على Overleaf.

## إذا كان مستندك كله يتضمن لغة واحدة فقط

عند استخدام `fontspec` الحزمة قد تتمكن من الاكتفاء بإعداد خط رئيسي (serif) واحد، وخط sans-serif، وربما خط أحادي المسافة مصمَّم لدعم اللغة التي تقوم بتنضيدها—لكن هناك نقطة استدراك، سنعود إليها لاحقًا في المقالة. على سبيل المثال، إذا كان مستندك بالكامل باليونانية، مع بعض الكلمات الإنجليزية، يمكنك ببساطة كتابة

```latex
\usepackage{fontspec}
\setmainfont[Script=Greek]{GFS Artemisia}
\setsansfont[Script=Greek]{GFS Neohellenic}
\setmonofont[Script=Greek]{Noto Mono}
. . .
Lorem Ipsum هو نص \textsf{بسيط} بلا معنى
للمهنيين في \texttt{الطباعة} والتصفيف.
```

يمكنك اختيار الخطوط من [قائمة الخطوط المتاحة من نوع TrueType وOpenType](https://www.overleaf.com/help/193). الحزمة `Ligatures=TeX` يُضاف الخيار `\setmainfont` و `\setsansfont`، لذلك لا تحتاج إلى إضافته بنفسك. (`\setromanfont` هو اسم بديل لـ `\setmainfont`.)

ينتج كود LaTeX أعلاه المخرجات التالية:

![](/files/1aa7fc2feaa17e40482acb9e3516444c71c5d3d1)

## اللغات/الكتابات المتعددة في المستند نفسه: تقديم polyglossia

إذا كان مستندك يحتوي على كميات غير بسيطة من النص بعدة لغات، فإن `polyglossia` الحزمة مفيدة للمساعدة في التعامل مع الأعراف الطباعية الخاصة باللغة وتقسيم الكلمات عند نهاية السطر.

```latex
\usepackage{fontspec}
\setmainfont{FreeSerif}
\setsansfont{FreeSans}
\setmonofont{FreeMono}

\usepackage{polyglossia}
\setdefaultlanguage{french}
\setotherlanguages{english,russian,thai}

\begin{document}
\begin{abstract}
لوريم إيبسوم هو ببساطة نصّ وهمي يُستخدم في
التنسيق والتخطيط قبل الطباعة.
\end{abstract}

شكرًا. \textenglish{Thank you.} \textrussian{Спасибо.} والمزيد من
نص باللغة الفرنسية!

لوريم إيبسوم هو النص الوهمي القياسي ...

\begin{english}
لوريم إيبسوم هو ببساطة نصّ وهمي ...
\end{english}

\begin{russian}
لوريم إيبسوم - это текст-`\textsf{рыба}', часто используемый в
\texttt{печати} и вэб-дизайне. ...
\end{russian}

\begin{thai}
\XeTeXlinebreaklocale "th_TH"
\textenglish{Lorem Ipsum} هو نص تجريبي بسيط يُستخدم في أعمال الطباعة أو التنضيد
\end{thai}
```

![](/files/1f295b021b5e0d272dc678024fef8b854bbd4303)

`polyglossia` يتيح لك تعيين اللغة الرئيسية للمستند باستخدام `\setdefaultlanguage` (الافتراضي هو الإنجليزية) ولغات «أخرى» (وقد تكون متعددة) باستخدام `\setotherlanguages`. (`\setmainlanguage` هو اسم بديل لـ `\setdefaultlanguage`.) إذا كنت تتوقع استخدام لغة أجنبية أخرى واحدة فقط، فيمكنك استخدام الصيغة المفردة `\setotherlanguage`. أسماء اللغات هي نفسها المستخدمة بواسطة `babel`.

لقد أعددنا مثالًا صغيرًا لمستند (بشكل أساسي) بالفرنسية، يحتوي أيضًا على بعض النصوص بالإنجليزية والروسية والتايلندية. وقد قررنا استخدام الخطوط FreeSerif وFreeSans وFreeMono.

لأن اللغة الرئيسية للمستند هي `الفرنسية`، و `abstract` تُنتج بيئة ‘abstract’ تلقائيًا العنوان ‘Résumé’. لاحظ كيف أنه في نهاية الفقرة الأولى، تُنضَّد علامة التعجب وفقًا لعرف المسافات الفرنسي: إذ تُفصل عن ‘français’ حتى مع أنها تأتي مباشرة بعد الكلمة `français` في الشفرة المصدرية.

في النص الرئيسي، يمكن إدراج مقاطع قصيرة بالإنجليزية والسيريلية والتايلندية في فقرة من النص الفرنسي باستخدام `\textenglish{Thank you}`, `\textrussian{Спасибо}` و `\textthai{ขอบคุณ}`. عمومًا، يمكنك استخدام `\textLANGUAGE{...}` لنضد نصًا بأي `LANGUAGE` تم التصريح بها بواسطة `\setdefaultlanguage` و `\setotherlanguages`. ولأن الخط الرئيسي (serif) للمستند هو FreeSerif، وFreeSerif يحتوي على رموز للكتابات اللاتينية والسيريلية والتايلندية (وأكثر!)، فإن `fontspec` و `polyglossia` يمكنه استخدامها لعرض كل هذه النصوص في ملف PDF الناتج.

أما الفقرات الأطول من النص بلغات أجنبية/أخرى، فيوصى باستخدام `\begin{LANGUAGE}`...`\end{LANGUAGE}`، على سبيل المثال `\begin{russian}`...`\end{russian}`, `\begin{thai}`...`\end{thai}`. في حالة العربية لا يمكنك استخدام `\begin{arabic}`...`\end{arabic}`؛ سيتعين عليك كتابة `\begin{Arabic}`...`\end{Arabic}` بدلًا من ذلك، بينما يظل `\textarabic{...}` صالحًا.

قد تكون هناك بعض الاعتبارات اللازمة لبعض اللغات: فمثلًا، داخل `thai` بيئة `Lorem Ipsum` يجب أن تُحاط بـ `\textenglish{...}` (أو `\textfrench{...}`) لضمان عرضها باستخدام رموز الكتابة اللاتينية.

في هذه المرحلة قد تسأل: إذا كان FreeSerif متعدد الاستخدامات إلى هذا الحد ويحتوي على رموز للروسية والتايلندية على أي حال، فلماذا نحتاج لاستخدام `\textrussian`, `\begin{english}`...`\end{english}` إلخ؟ ألن يكون ذلك مكرّرًا؟ لِنرَ ما يحدث عندما نزيل `\begin{english}`...`\end{english}` و `\begin{russian}`...`\end{russian}` البيئات:

![](/files/2f18aac72f9ba0029d187b045420404c3d76d970)

بالتأكيد، تُعرض جميع رموز اللاتينية والسيريلية في ملف PDF الناتج، ولكن لاحظ أن بعض الكلمات أصبحت الآن مقطّعة بشكل غير صحيح: ‘unk-nown’ و‘unchan-ged’—وحتى стандартной لم يُقطع أصلًا. من دون بيئات تبديل اللغة، يعتقد المصرّف أن هذه العناصر النصية لا تزال باللغة الفرنسية ويحاول تنضيدها باستخدام الأعراف الفرنسية. ويحاول المصرّف تطبيق قواعد الفصل عند نهاية السطر الفرنسية، مما ينتج طبيعيًا نتائج غير صحيحة. ولهذا فإن الطباعة والتنضيد أكثر بكثير من مجرد تصميم الخط واختياره: فهما تخصصان خاصان جدًا باللغة والثقافة.

بالعودة إلى مثالنا اليوناني الأول، نرى الآن لماذا من الجيد تحميل `polyglossia` واستخدام `\setdefaultlanguage{greek}`لضمان تنضيد المستند وفق الأعراف اليونانية.

## مزج اللغات من اليمين إلى اليسار (RTL) ومن اليسار إلى اليمين (LTR)

يجب أن تكون حذرًا عند تنضيد مزيج من الكتابات من اليمين إلى اليسار (RTL)، مثل العربية أو العبرية، والكتابات من اليسار إلى اليمين (LTR) في المستند نفسه. تأمل هذا المستند العربي الصغير التالي مع كلمة إنجليزية، باستخدام Amiri كخط رئيسي:

```latex
\usepackage{polyglossia}
\setdefaultlanguage{arabic}
\setmainfont{Amiri}
\begin{document}
ما هو differentiation
\end{document}
```

الذي ينتج:

![](/files/fa1aeb8a6fe43b0f45d932ae869a10f1727565ae)

يُضبط النص تلقائيًا من اليمين إلى اليسار، بدءًا من الحافة اليمنى للصفحة. وتُضبَط الكلمة “differentiation” نفسها بشكل صحيح كنص من اليسار إلى اليمين—لكن انتظر، *لا، ليس كذلك*! إذ تظهر في الناتج على شكل “dffirentiation”! ما الذي يحدث؟

خط Amiri يحتوي بالفعل على رموز للأبجديات اللاتينية، لكن هنا النص `differentiation` غير معلَّم على أنه إنجليزي: يتعامل المصرّف مع `differentiation` على أنه نص من اليمين إلى اليسار، كما لو كان تسلسلًا من الأحرف العربية. أثناء التنضيد، يُعالج التسلسل الأصلي `iff` على أنه `ffi` (أي كنص RTL) ويُضبَط شكل الحرف الملتصق [ligature](https://en.wikipedia.org/wiki/Typographic_ligature) لـ “ffi” بواسطة Amiri. إن تمييز الكلمة بـ `\textenglish{...}` يضمن تفسيرها بشكل صحيح كنص من اليسار إلى اليمين.

```latex
\setmainfont{Amiri}
\setotherlanguage{english}
\newfontfamily\englishfont{TeX Gyre Termes}
\begin{document}
ما هو \textenglish{differentiation}
```

![](/files/052288029877c69fb08131e7c85b73953ac93bcf)

**ملاحظة:** إذا كنت معتادًا على `babel` أخبارك السارة أن أوامر حزمة `\selectlanguage`, `\foreignlanguage` والبيئة `otherlanguage` مدعومة أيضًا من قبل `polyglossia`.

## خيارات خاصة باللغة

تدعم بعض اللغات خيارات إضافية للتخصيص؛ فعلى سبيل المثال، `اليونانية` تقبل خيارًا `variant=ancient`, `mono` أو `poly` لليونانية القديمة أو الأحادية النغمة أو متعددة النغمات؛ `الهندية` يمكن ضبطها باستخدام `numerals=western` أو `ديفاناغاري`انظر [توثيق حزمة polyglossia](http://texdoc.net/pkg/polyglossia) للتفاصيل.

يمكن تحديد هذه الخيارات عند تحميل اللغة:

```latex
\setdefaultlanguage[variant=poly]{greek}
\setotherlanguage[numerals=western]{hindi}
```

أو لاحقًا في أي وقت:

```latex
\setkeys{greek}{variant=ancient}
```

أو حتى محليًا لبيئة معينة:

```latex
\begin{greek}[variant=ancient]
...
\end{greek}
```

## تحديد الخطوط للغات محددة

يمكنك تحديد الخط المستخدم للغات المختلفة. لنفترض أنك تريد تنضيد كل النص الإنجليزي (الوارد في مثالنا السابق) بخط مائل؛ يمكنك كتابة:

```latex
\newfontfamily\englishfont{FreeSerif Italic}
```

![](/files/e10f0507cd5479bf2273a248fc17f36841243a50)

وبالطبع يمكنك استخدام شيء أكثر بهرجة:

```latex
\newfontfamily\englishfont{Chancery Uralic}
```

![](/files/ba0d93a7752a8ec0fe43caf880f84db14f68b3e3)

هذه الآلية لتعيين الخطوط للغات أو كتابات مختلفة مهمة بشكل خاص عندما تستخدم خطًا رئيسيًا *لا* لا يحتوي على رموز لجميع الكتابات أو اللغات في مستندك. لنفترض أننا قررنا الآن استخدام Caladea كخط رئيسي للمستند:

```latex
\setmainfont{Caladea}
```

عند الترجمة سنرى رسالة الخطأ التالية:

```
خطأ الحزمة polyglossia: الخط الروماني الحالي
لا يحتوي على الكتابة السيريلية!

(polyglossia)                يرجى تعريف
\cyrillicfont باستخدام \newfontfamily.

راجع توثيق حزمة polyglossia للحصول على
شرح.
Type  H <return>  for immediate help.
 ...

l.15 \select@language {russian}

خطأ الحزمة polyglossia: الخط الروماني الحالي
لا يحتوي على الكتابة التايلندية!

(polyglossia)                يرجى تعريف
\thaifont باستخدام \newfontfamily.

راجع توثيق حزمة polyglossia للحصول على
شرح.
Type  H <return>  for immediate help.
 ...

l.23 \select@language {thai}
...
```

نحن الآن ملزمون بتحديد الخطوط المستخدمة للكتابات السيريلية والتايلندية. ومرة أخرى، يمكنك الرجوع إلى [قائمة الخطوط المتاحة من نوع TrueType وOpenType](https://www.overleaf.com/help/193) على Overleaf.

```latex
\newfontfamily\cyrillicfont[Script=Cyrillic]{Charis SIL}
\newfontfamily\thaifont[Script=Thai]{Garuda}
```

![](/files/d25ce1f3b9940044fc67746dd94ac427037ce990)

**ملاحظة**: إذ إن معالجة قضايا اختيار تركيبات خطوط جميلة ومتوافقة طباعيًا تقع خارج نطاق هذه المقالة.

لاحظ أننا عرّفنا `\cyrillicfont` بدلاً من `\russianfont`، أي إننا عرّفنا خطًا لكتابة سيريليّة *كتابة* اللغة الروسية *اللغة*. وتكمن ميزة تعريف `\cyrillicfont` في أنه إذا كانت، على سبيل المثال، `الصربية` مُعرّفة أيضًا كلغة في مشروعك، فإن `\textserbian` سيستخدم تلقائيًا `\cyrillicfont`. `\russianfont`، فإن استخدام `\textserbian` سيشتكي مرة أخرى من “الخط الروماني الحالي لا يحتوي على الكتابة السيريلية” وستحتاج إلى تعريف `\cyrillicfont` على أي حال — *إلا إذا* أنتم *كنت تقصد* استخدام خط مختلف للنص الصربي!

سيناريو مشابه آخر هو كتابة ديفاناغاري *كتابة*، وهي المستخدمة للغتين الهندية والسنسكريتية *اللغتين*؛ أو الكتابة العربية المستخدمة للعربية والفارسية.

```latex
\setdefaultlanguage{english}
\setotherlanguages{hindi,sanskrit}
\newfontfamily\devanagarifont[Script=Devanagari]{Lohit Devanagari}
...
الهندية: \texthindi{हिन्दी}
السنسكريتية: \textsanskrit{संस्कृतम्}
```

![](/files/9fb4435ba45177fa202510618e7dacf09371f0b5)

عند استخدام `\newfontfamily` يكون من الضروري تحديد `Script`، وإلا فقد تُعرض بعض الرموز بشكل غير صحيح؛ على سبيل المثال، لو كنا كتبنا فقط `\newfontfamily\thaifont{Garuda}` قد تكون نتيجة التنضيد غير صحيحة (الصورة اليسرى أدناه)—وتُنتج المخرجات الصحيحة بإضافة `[Script=Thai]`.

خطأ: ![](/files/0e63e78a7d691970f5512d8078cdb9101424c659) صحيح: ![](/files/e35d8ab1ba5846bfefef228b47902b1cc687fb38)

## تعريف عائلات خطوط أخرى

دعنا نلقِ نظرة على مثال آخر، وهذه المرة مع العبرية:

```latex
\documentclass{article}
\usepackage{polyglossia}
\setdefaultlanguage[numerals=hebrew]{hebrew}
\setotherlanguage{english}
\newfontfamily\hebrewfont[Script=Hebrew]{Hadasim CLM}
\begin{document}
\section{מבוא}
إنها حقيقة مثبتة أن انتباه القارئ سيتشتت بالنص المقروء عندما ينظر إلى تخطيطه.  -
\end{document}
```

![](/files/4476341f597b349c98746c023ae7b17d9d4819a9)

حتى الآن كل شيء جيد. والآن لنفترض أننا كنا نستخدم قالبًا أُنشئ أصلًا لمستند إنجليزي، يضبط عناوين الأقسام بخط sans serif باستخدام `titlesec` الحزمة:

```latex
\RequirePackage{titlesec}
\titleformat{\section}{\Large\sffamily\bfseries}{\thesection}{1em}{}
\usepackage{polyglossia}
\setdefaultlanguage[numerals=hebrew]{hebrew}
...
```

نواجه رسالة الخطأ:

```
خطأ الحزمة polyglossia: الخط الروماني الحالي
لا يحتوي على الكتابة العبرية!

(polyglossia)                يرجى تعريف
\hebrewfont باستخدام \newfontfamily.

راجع توثيق حزمة polyglossia للحصول على
شرح.
Type  H <return>  for immediate help.
 ...

l.27 \section{מבוא}
```

هذا مربك قليلًا: ألم نكن قد عرّفنا بالفعل `\hebrewfont` على أنه Hadasim CLM؟ حسنًا، السبب الحقيقي هو أننا *لم نحدّد خطًا sans serif للعبرية*دعنا نعالج ذلك بإضافة تعريف لـ `\hebrewfontsf`:

```latex
\newfontfamily\hebrewfontsf[Script=Hebrew]{Miriam CLM}
```

والآن أصبح لدينا الناتج:

![](/files/070dc75d5dba2b03a90aecb73326edfa392cf3db)

إذا دعت الحاجة، يمكننا أيضًا تعريف خط أحادي المسافة لاستخدامه مع `\hebrewfonttt`.

## الشكر والتقدير

جميع مقاطع lorem ipsum، بمختلف اللغات، مأخوذة من [`https://lipsum.com`](https://lipsum.com).


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://overleaf-pro.ayaka.space/latex/ar/allghat/01-multilingual-typesetting-on-overleaf-using-polyglossia-and-fontspec.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
