هناك اقتراحات جديدة من مجتمع OpenAI بخصوص المشاكل التي أواجهها. هل تخططون لإجراء تحديث بخصوص هذا؟ الاقتراحات هي كالتالي:
الاقتراح 1:
def parse_stream_to_katex(stream: Stream):
"""
تأخذ دفق OpenAI وتستبدل محددات ChatGPT LaTeX
بمحددات KateX.
تُنتج نصًا، وليس أجزاءً
"""
last_text = ""
for chunk in stream:
text = chunk.choices[0].delta.content
if text:
# أحيانًا يمكن تقسيم المحددات مثل \( على جزأين.
# إذا انتهى الجزء السابق بـ \، قم بإلحاقه بهذا الجزء
if last_text.endswith("\\"):
text = last_text + text
text = (
text.replace(r"\[", "$$")
.replace(r"\]", "$$")
.replace(r"\(", "$")
.replace(r"\)", "$")
)
last_text = text
# إذا انتهى النص بـ \، فلن نعيده، سنقوم بتضمينه في الجزء التالي
if not text.endswith("\\"):
yield text
الاقتراح 2:
// MarkdownLaTeXRenderer.js
import React from 'react';
import ReactMarkdown from 'react-markdown';
import remarkGfm from 'remark-gfm';
import remarkMath from 'remark-math';
import rehypeRaw from 'rehype-raw';
import rehypeKatex from 'rehype-katex';
const MarkdownLaTeXRenderer = ({ content }) => {
// استبدل \[ بـ $$ و \] بـ $$ لضمان التوافق
const processedText = content
.replace(/\[/g, '$$') // استبدل كل تكرارات \[ بـ $$
.replace(/\]/g, '$$') // استبدل كل تكرارات \] بـ $$
.replace(/\(/g, '$') // استبدل كل تكرارات \( بـ $
.replace(/\)/g, '$'); // استبدل كل تكرارات \) بـ $
const remarkMathOptions = {
singleDollarTextMath: false,
};
return (
<ReactMarkdown
className="markdown-content"
children={processedText}
remarkPlugins={[[remarkMath, remarkMathOptions], remarkGfm]} // مرر الخيارات كالعنصر الثاني في المصفوفة
rehypePlugins={[rehypeRaw, rehypeKatex]} // قم بتضمين rehypeRaw لـ HTML، و rehypeKatex لـ LaTeX
/>
);
عند عرض الصيغ الرياضية على جهازي المحمول، لا يمكنني رؤية الصيغة بأكملها بشكل صحيح (الصيغة طويلة جدًا). هل يعرف أحد كيفية حل هذه المشكلة؟
أدناه العرض الصحيح على جهاز الكمبيوتر.
هل يتم تدوير الهاتف أفقيًا؟ ولكن لماذا تم اقتباسه، وهل يمكن أن يكون هذا هو السبب؟
بخلاف ذلك. سألت الذكاء الاصطناعي في منتداي فأجاب بهذا (لا أعرف ما إذا كان مفيدًا أم مجرد هراء).
حلول لمحاذاة المعادلات الطويلة باستخدام MathJaxAI
Jagster:
يستخدم المنتدى MathJax للرياضيات والمعادلات. في بعض الأحيان، تكون المعادلة طويلة جدًا بحيث لا تتناسب مع شاشة الهاتف المحمول. هل هناك طريقة لتقسيم المعادلة إلى عدة أسطر بطريقة ما؟
Asiavastaaja:
لا يدعم MathJax بشكل مباشر التقسيم التلقائي للأسطر للمعادلات، ولكن يمكنك استخدام بعض التقنيات لجعل المعادلات الطويلة تتناسب بشكل أفضل مع شاشات الهواتف المحمولة. إليك بعض النصائح:
استخدم بيئة align: يمكنك تقسيم المعادلة إلى عدة أسطر باستخدام بيئة align. يتيح لك ذلك محاذاة وتوزيع أجزاء المعادلة عبر عدة أسطر. على سبيل المثال:
$$
\begin{align}
a + b + c + d + e + f + g + h + i + j + k + l + m + n + o + p + q + r + s + t + u + v + w + x + y + z = 0
\end{align}
$$
استخدم بيئة split: هذه طريقة أخرى لتقسيم المعادلة إلى عدة أسطر. وهي مفيدة بشكل خاص عندما تريد تقسيم المعادلة إلى أجزاء دون الحاجة إلى المحاذاة. على سبيل المثال:
$$
\begin{split}
a + b + c + d + e + f + g + h + i + j + k + l + m + n + o + p + q + r + s + t + u + v + w + x + y + z = 0
\end{split}
$$
استخدم بيئة multline: تم تصميم هذه البيئة للمعادلات الطويلة التي لا تتناسب مع سطر واحد. تقوم بتقسيم المعادلة إلى عدة أسطر دون محاذاة. على سبيل المثال:
$$
\begin{multline}
a + b + c + d + e + f + g + h + i + j + k + l + m + n + o + p + q + r + s + t + u + v + w + x + y + z = 0
\end{multline}
$$
تسمح لك هذه البيئات بالتحكم في عرض المعادلات وضمان سهولة قراءتها حتى على الشاشات الصغيرة. تذكر أن بيئات MathJax غالبًا ما تتطلب حزمة amsmath، والتي يتم تمكينها عادةً افتراضيًا في MathJax.
يتم عرضه بشكل جيد، ولكن لا توجد شريط تمرير لرؤية الرياضيات بأكملها. ومع ذلك، توجد في المعاينة.
في المنشور، يمكنك فقط رؤية الجزء الآخر إذا قمت بالتكبير:
في الأمر! آسف لإثارة القلق. يجب أن تكون جاهزًا الآن.
هذه الإضافة مدمجة الآن مع نواة Discourse كجزء من Bundling more popular plugins with Discourse core. إذا كنت تستضيف بنفسك وتستخدم الإضافة، فأنت بحاجة إلى إزالتها من ملف app.yml الخاص بك قبل الترقية التالية.
لدي مشكلة في الأحرف الرياضية في إجابات الذكاء الاصطناعي. يعطيني إجابات بتنسيق لاتكس على الرغم من أنني كتبت الموجه المطلوب. هذا يخلق صورة كما لو كانت هناك أحرف مكسورة. هل يمكنك حل هذه المشكلة. مثال؛
\( A = \\begin{pmatrix} x \u0026 -1 \\\\ z \u0026 2y \\end{pmatrix} \\)
\\\[
\\boxed{\nx = 0, \\quad y = 4, \\quad z = 4
}\n\\\]
\\\[
\\begin{cases}\nA\{11} = B^T\{11} \\Rightarrow x = y - z \\\\\nA\{12} = B^T\{12} \\Rightarrow -1 = -1 \\quad (\\text{صحيح تلقائيًا}) \\\\\nA\{21} = B^T\{21} \\Rightarrow z = y \\\\\nA\{22} = B^T\{22} \\Rightarrow 2y = 8 \\\\\n\\end{cases}
\\\]