From 31ea4f20c3584cf5ce754b1e00be56fd01c2c82a Mon Sep 17 00:00:00 2001
From: snow2white <164228644@qq.com>
Date: Sat, 18 Oct 2025 16:09:16 +0800
Subject: [PATCH 1/5] 1018_v1
---
.DS_Store | Bin 0 -> 6148 bytes
Online/.DS_Store | Bin 0 -> 6148 bytes
Online/README.md | 1 +
Online/community/.DS_Store | Bin 0 -> 8196 bytes
Online/community/QuestionAnswering/.DS_Store | Bin 0 -> 6148 bytes
Online/community/QuestionAnswering/README.md | 53 +++
...347\255\224\347\263\273\347\273\237.ipynb" | 434 ++++++++++++++++++
Online/community/README.md | 1 +
8 files changed, 489 insertions(+)
create mode 100644 .DS_Store
create mode 100644 Online/.DS_Store
create mode 100644 Online/community/.DS_Store
create mode 100644 Online/community/QuestionAnswering/.DS_Store
create mode 100644 Online/community/QuestionAnswering/README.md
create mode 100644 "Online/community/QuestionAnswering/\345\237\272\344\272\216Qwen1.5-0.5b\347\232\204\351\227\256\347\255\224\347\263\273\347\273\237.ipynb"
diff --git a/.DS_Store b/.DS_Store
new file mode 100644
index 0000000000000000000000000000000000000000..0f2506ab4c9b9624bfd8d8febee3cd44624c476c
GIT binary patch
literal 6148
zcmeHK%Wl&^6upz0#-;)V38Ze2EU~Rhh^k6eH*T6ND)Er&3KoEZjRUpndZO5A7EvUx
z;UD+~wtNZy!V1ovnW8u;EGvrUS~F)J_uR41*fSm?65UDigs4SCE)t`28`%}c{hU^;
zVOl((P%)lUNd2QszK^pNZ`)uMunPQZ3h=kvq^ER5ht#Kq?^nj?;bq|fY5S)#l-T
yr06yz{Gl#lye(#?xXHXDaTuc$B3@*=~OqjWy@ided#X8}8fi
zR8GS(DknuZ8o%b+iIiD2Nw|-9MCh8KwDftO#i`gv*;(X`aYwS5ESzP~1>=
zxSs0`TAQ=kZl}HFcRG9XEq}Jh<(=J~`P_3KJbJu;JUGkFbNPwoz|x1cPuU%Vm+%>d
z+Vfw8<2;l3N3=8NF0>g@K|LDM1)U&2M?Is6%4J;z$6A~PkB%{42jD&fZiAWBXF~i~
zV%)<>C1Q_}4=^W^N1+%f=?oDHI;}@&@O>_h=_m%G)cw>O@@3%-0nOSCP{6#m?#2zc
zS9^^V`7h$Nh`6QEdO+|Ryb9oMoB
z6y_RJQdCe)pAXBWY~S!VD!}h9pfl2Rf#0q7r_a(-r|9LW@e;oC!x*BKjC3}+bd2lt
zvMeTbzyDoy*18YYH{^!gl<(q?dKTA7J)I1b>J8UUv@X+|I7v^7d^YYqdZksJ6e_O_
zp~!NiynS7$OwWdTs)ru_7~gXe4pdpz1_tkkdL1}dvQGe
zR9-0k#oRjy%vEC#9p1oK1S_<-iYrxWb&g(U2AJWBK2S~-TtU11uxzRI4Owlqj_Cjz
zj_3%u1D&%rLp-^|koXT(l$eotwDUXpe5bcZK-HU9z$@StxQ7C69h95*;P_OpfLGxE
zP=MEm5Y8AmY%H3k1BE#P0J~^5hL}GXnG-sU95xow0~3}Cv{d1a7{b!g9=g29VPnzK
zNw~v@a3c$MLJ?+kTt77FBqEEx^a^+d+6t`MYLEB-gWsS3+azD}3U~$nDFsA#6pw~@
zB)7LNJsj_~A^bg@jq@6dzbFXIR*YQUinrj#&>nICj2t!=(E{@y0!9X3cm@8b0zUzX
C*n)@v
literal 0
HcmV?d00001
diff --git a/Online/README.md b/Online/README.md
index 14cf136..9bab06b 100644
--- a/Online/README.md
+++ b/Online/README.md
@@ -76,6 +76,7 @@
| [VideoClassification](https://github.com/mindspore-courses/orange-pi-mindspore/tree/master/Online/community/VideoClassification) | 8.0.0.beta1 | 2.6.0 |8T16G |
| [MaskGeneration](https://github.com/mindspore-courses/orange-pi-mindspore/tree/master/Online/community/MaskGeneration) | 8.1.RC1 | 2.6.0 | 8T16G |
| [DocumentQuestionAnswering](https://github.com/mindspore-courses/orange-pi-mindspore/tree/master/Online/community/DocumentQuestionAnswering) | 8.0.0.beta1 | 2.6.0 | 20T24G |
+| [QuestionAnswering](https://github.com/mindspore-courses/orange-pi-mindspore/tree/master/Online/community/QuestionAnswering) | 8.0.0.beta1 | 2.6.0 | 20T24G |
diff --git a/Online/community/.DS_Store b/Online/community/.DS_Store
new file mode 100644
index 0000000000000000000000000000000000000000..c51defc3242be33eede4feb52a8bcb3909bbf321
GIT binary patch
literal 8196
zcmeHMK~EGh6n+Ji*=#^y)!@No60Zc25E9~LcUd$Xh>;<9P=hnOD~=3PvNP+dgk;b9
zAN&hm{U!bvPx`&K3p2Bz%f%RM$?NO1{a)Lzubq7Z5s7-Y^?+!eh#Uy(nKH6-61TGq
zr7=@82Q7dnI;1wml+sh`4)wMbmI2FvWxz6E8L$le3k=|$&B?joy{}tsZW*u){Fe;y
z{oq1aSB>s#t*#DaDg=O@K($IJBMwj)*XXLzeXSJ~Hg)tM3{;p9LufeKUG5HDHM+00
zhLg~65@uv!A{3!U2hLU9NmRAAxn;mIFw6kQ?sup`lA4Iwv+;YI5=8PLT4Jg}66ztk
z@1Q28{mn==gGdHI^MR{D7JsUQ645L@LSG;FE)Z?np!XBd8wavle*t|&QCj1M!}%$2fJarw>NWhUB;;_f&*gsnEZ
zym%JIE!nHfZrn-~*3%76$tms4%pV`GE-x*(%gbvg3-0k6mseI-PEJbBt$X($ZtopL
zhq3$wUXX;j>}g6rpXR({BXIT3>%@_anPs+AqHTC$4ZE@hy$Jtm<#$v0@s|vnbL4?b
z{-VWs6S)WfJA|-D@>xjfL%{}na@NKaFnqGun;G%(LSJI<%_48ZUwwE}gmM44tNB^5
zU*v4f4SfF+r-^+#JD>8Yjcv>;rUR^I=q^w`okdlElIY6}j(n1NCvtwxWAiEGdx*I|
z_cRi?&!H-`i#fJ1wj6zIzD06YK!Z(|fh)(rxL(nG8G7U5@BdeB-F88i0n5M{17f1#
zHR^aC{M$c*zC$O@C(x!X{G=G
literal 0
HcmV?d00001
diff --git a/Online/community/QuestionAnswering/.DS_Store b/Online/community/QuestionAnswering/.DS_Store
new file mode 100644
index 0000000000000000000000000000000000000000..93653d979e2804d8a6dc2d179328cf8cd6059993
GIT binary patch
literal 6148
zcmeHKyGjF55Iv(Q0yZhNyFZ|q!Zs`+7B+$?*vhJf5KI~sQDh6j&d&ewPy7QvKnp$d
zP+Zou7BT}f=ib>l_hwJAlK~*(i<2QR0MMr^;z2{#^tpP+mLelWI?p)8IfmH47S=n}
zzbBNtcKEjYh&^1j_?vc4eR==%dUJ65e)q!t8Rod=9rez1c3e+qHQD;pNA%~9Fs{>5
zfm9$BNCi@XRA7+;+IwmJ6~~OJKq`<5d@G>eheB7Z0vkvBbTHTmK type is zero.\n",
+ " setattr(self, word, getattr(machar, word).flat[0])\n",
+ "/home/HwHiAiUser/.local/lib/python3.9/site-packages/numpy/core/getlimits.py:89: UserWarning: The value of the smallest subnormal for type is zero.\n",
+ " return self._float_to_str(self.smallest_subnormal)\n",
+ "/home/HwHiAiUser/.local/lib/python3.9/site-packages/numpy/core/getlimits.py:549: UserWarning: The value of the smallest subnormal for type is zero.\n",
+ " setattr(self, word, getattr(machar, word).flat[0])\n",
+ "/home/HwHiAiUser/.local/lib/python3.9/site-packages/numpy/core/getlimits.py:89: UserWarning: The value of the smallest subnormal for type is zero.\n",
+ " return self._float_to_str(self.smallest_subnormal)\n",
+ "[WARNING] ME(7230:255085986443296,MainProcess):2025-09-11-15:30:28.629.326 [mindspore/context.py:1402] For 'context.set_context', the parameter 'ascend_config' will be deprecated and removed in a future version. Please use the api mindspore.device_context.ascend.op_precision.precision_mode(),\n",
+ " mindspore.device_context.ascend.op_precision.op_precision_mode(),\n",
+ " mindspore.device_context.ascend.op_precision.matmul_allow_hf32(),\n",
+ " mindspore.device_context.ascend.op_precision.conv_allow_hf32(),\n",
+ " mindspore.device_context.ascend.op_tuning.op_compile() instead.\n",
+ "/home/HwHiAiUser/.local/lib/python3.9/site-packages/tqdm/auto.py:21: TqdmWarning: IProgress not found. Please update jupyter and ipywidgets. See https://ipywidgets.readthedocs.io/en/stable/user_install.html\n",
+ " from .autonotebook import tqdm as notebook_tqdm\n",
+ "Building prefix dict from the default dictionary ...\n",
+ "Loading model from cache /tmp/jieba.cache\n",
+ "Loading model cost 1.471 seconds.\n",
+ "Prefix dict has been built successfully.\n"
+ ]
+ },
+ {
+ "name": "stdout",
+ "output_type": "stream",
+ "text": [
+ "正在加载模型...\n"
+ ]
+ },
+ {
+ "name": "stderr",
+ "output_type": "stream",
+ "text": [
+ "Qwen2ForCausalLM has generative capabilities, as `prepare_inputs_for_generation` is explicitly overwritten. However, it doesn't directly inherit from `GenerationMixin`.`PreTrainedModel` will NOT inherit from `GenerationMixin`, and this model will lose the ability to call `generate` and other related functions.\n",
+ " - If you are the owner of the model architecture code, please modify your model class such that it inherits from `GenerationMixin` (after `PreTrainedModel`, otherwise you'll get an exception).\n",
+ " - If you are not the owner of the model architecture class, please contact the model code owner to update it.\n",
+ "Sliding Window Attention is enabled but not implemented for `eager`; unexpected results may be encountered.\n"
+ ]
+ },
+ {
+ "name": "stdout",
+ "output_type": "stream",
+ "text": [
+ "模型加载完成!\n"
+ ]
+ }
+ ],
+ "source": [
+ "import mindspore\n",
+ "from mindnlp.transformers import AutoModelForCausalLM, AutoTokenizer\n",
+ "from mindnlp.transformers import TextIteratorStreamer\n",
+ "from threading import Thread\n",
+ "\n",
+ "# 加载tokenizer和模型\n",
+ "print(\"正在加载模型...\")\n",
+ "tokenizer = AutoTokenizer.from_pretrained(\"/home/HwHiAiUser/Qwen1.5-0.5B-Chat\", mirror=\"modelers\", ms_dtype=mindspore.float16)\n",
+ "model = AutoModelForCausalLM.from_pretrained(\"/home/HwHiAiUser/Qwen1.5-0.5B-Chat\", mirror=\"modelers\", ms_dtype=mindspore.float16)\n",
+ "print(\"模型加载完成!\")\n"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "id": "20ecde6c",
+ "metadata": {},
+ "source": [
+ "## 构建回答的流式输出函数"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 7,
+ "id": "bdb00370-ac2b-4e7e-9cc9-3130a535ad2b",
+ "metadata": {},
+ "outputs": [],
+ "source": [
+ "system_prompt = \"你是个能回答问题的专家,需要根据用户的需求来具体解答\"\n",
+ "def chat_with_model(user_input):\n",
+ " \"\"\"与模型进行单轮对话,支持流式输出\"\"\"\n",
+ " # 构建消息格式\n",
+ " messages = [\n",
+ " {'role': 'system', 'content': system_prompt},\n",
+ " {'role': 'user', 'content': user_input}\n",
+ " ]\n",
+ " \n",
+ " # 应用聊天模板\n",
+ " input_ids = tokenizer.apply_chat_template(\n",
+ " messages,\n",
+ " add_generation_prompt=True,\n",
+ " return_tensors=\"ms\",\n",
+ " tokenize=True\n",
+ " )\n",
+ " \n",
+ " # 创建流式输出器\n",
+ " streamer = TextIteratorStreamer(tokenizer, timeout=300, skip_prompt=True, skip_special_tokens=True)\n",
+ " \n",
+ " # 生成参数\n",
+ " generate_kwargs = dict(\n",
+ " input_ids=input_ids,\n",
+ " streamer=streamer,\n",
+ " max_new_tokens=1024,\n",
+ " do_sample=True,\n",
+ " top_p=0.9,\n",
+ " temperature=0.1,\n",
+ " num_beams=1,\n",
+ " pad_token_id=tokenizer.eos_token_id\n",
+ " )\n",
+ " \n",
+ " # 在单独线程中启动生成\n",
+ " t = Thread(target=model.generate, kwargs=generate_kwargs)\n",
+ " t.start()\n",
+ " \n",
+ " # 流式输出tokens\n",
+ " full_response = \"\"\n",
+ " for new_token in streamer:\n",
+ " if '' in new_token: # 检查停止token\n",
+ " break\n",
+ " print(new_token, end=\"\", flush=True)\n",
+ " full_response += new_token\n",
+ " \n",
+ " return \"回答完毕\""
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "id": "4e6affcd-f9fd-48c4-a5bf-d4ddbbc23b03",
+ "metadata": {},
+ "source": [
+ "## 单轮LLM问答"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 8,
+ "id": "a2e6015e-4235-4013-9645-e64fee22f227",
+ "metadata": {},
+ "outputs": [
+ {
+ "name": "stdout",
+ "output_type": "stream",
+ "text": [
+ "我是来自阿里云的大规模语言模型,我叫通义千问。"
+ ]
+ },
+ {
+ "data": {
+ "text/plain": [
+ "'回答完毕'"
+ ]
+ },
+ "execution_count": 8,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "query=\"你是谁\"\n",
+ "chat_with_model(f\"请回答:{query}\")"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "id": "55da8aa1-a41b-429f-9466-6da945406253",
+ "metadata": {},
+ "source": [
+ "## 连续多轮LLM问答"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 9,
+ "id": "582b86b4-ef3e-481f-8b87-d132b1fc9d75",
+ "metadata": {},
+ "outputs": [
+ {
+ "name": "stdout",
+ "output_type": "stream",
+ "text": [
+ "=== 连续问答已启动(输入 q/quit/exit 退出)===\n",
+ "\n"
+ ]
+ },
+ {
+ "name": "stdin",
+ "output_type": "stream",
+ "text": [
+ "你: 你是谁\n"
+ ]
+ },
+ {
+ "name": "stdout",
+ "output_type": "stream",
+ "text": [
+ "助手:我是来自阿里云的大规模语言模型,我叫通义千问。\n"
+ ]
+ },
+ {
+ "name": "stdin",
+ "output_type": "stream",
+ "text": [
+ "你: 介绍一下华为的主要业务\n"
+ ]
+ },
+ {
+ "name": "stdout",
+ "output_type": "stream",
+ "text": [
+ "助手:华为是一家中国领先的通信设备和解决方案提供商。其主要业务包括智能手机、互联网设备(如路由器、交换机)、云计算服务以及大数据分析等。同时,华为还提供数据存储、网络安全、人工智能等领域的技术解决方案。\n"
+ ]
+ },
+ {
+ "name": "stdin",
+ "output_type": "stream",
+ "text": [
+ "你: q\n"
+ ]
+ },
+ {
+ "name": "stdout",
+ "output_type": "stream",
+ "text": [
+ "[结束对话]\n"
+ ]
+ }
+ ],
+ "source": [
+ "# 直接运行本单元格,然后在提示符连续输入问题;输入 q/quit/exit 结束。\n",
+ "\n",
+ "from mindnlp.transformers import TextIteratorStreamer\n",
+ "from threading import Thread\n",
+ "\n",
+ "# 基础生成参数(可保留默认值)\n",
+ "GEN_MAX_NEW_TOKENS = 512\n",
+ "GEN_TEMPERATURE = 0.7\n",
+ "GEN_TOP_P = 0.9\n",
+ "\n",
+ "# 可选的系统提示词(如果不需要,置为空字符串)\n",
+ "SYSTEM_PROMPT = \"你是一个专业的中文问答助手,请结合上下文,给出准确、简洁、有条理的回答。\"\n",
+ "\n",
+ "# 校验必要对象\n",
+ "if \"tokenizer\" not in globals() or \"model\" not in globals():\n",
+ " raise RuntimeError(\"未检测到 tokenizer 或 model,请先运行上文加载模型的单元格。\")\n",
+ "\n",
+ "def generate_once(messages):\n",
+ " \"\"\"\n",
+ " 基于 MindNLP 的聊天模板与流式生成,输入完整 messages(包含历史),返回本轮回复字符串。\n",
+ " messages: List[{'role': 'system'|'user'|'assistant', 'content': str}]\n",
+ " \"\"\"\n",
+ " # 1) 构造输入(MindNLP: return_tensors='ms')\n",
+ " input_ids = tokenizer.apply_chat_template(\n",
+ " messages,\n",
+ " add_generation_prompt=True,\n",
+ " return_tensors=\"ms\",\n",
+ " tokenize=True\n",
+ " )\n",
+ "\n",
+ " # 2) 创建流式输出器(逐 token 返回字符串)\n",
+ " streamer = TextIteratorStreamer(\n",
+ " tokenizer=tokenizer,\n",
+ " skip_prompt=True,\n",
+ " skip_special_tokens=True\n",
+ " )\n",
+ "\n",
+ " # 3) 组装生成参数\n",
+ " generate_kwargs = dict(\n",
+ " input_ids=input_ids,\n",
+ " max_new_tokens=GEN_MAX_NEW_TOKENS,\n",
+ " do_sample=True,\n",
+ " temperature=GEN_TEMPERATURE,\n",
+ " top_p=GEN_TOP_P,\n",
+ " streamer=streamer,\n",
+ " eos_token_id=getattr(tokenizer, \"eos_token_id\", None),\n",
+ " pad_token_id=getattr(tokenizer, \"pad_token_id\", None),\n",
+ " )\n",
+ "\n",
+ " # 4) 在线程中启动生成(主线程消费 streamer)\n",
+ " t = Thread(target=model.generate, kwargs=generate_kwargs)\n",
+ " t.start()\n",
+ "\n",
+ " # 5) 流式打印并累计输出\n",
+ " full_text = \"\"\n",
+ " for piece in streamer:\n",
+ " print(piece, end=\"\", flush=True)\n",
+ " full_text += piece\n",
+ " print() # 换行\n",
+ "\n",
+ " return full_text.strip()\n",
+ "\n",
+ "# ========== 多轮对话主循环 ==========\n",
+ "history = []\n",
+ "if SYSTEM_PROMPT:\n",
+ " history.append({\"role\": \"system\", \"content\": SYSTEM_PROMPT})\n",
+ "\n",
+ "print(\"=== 连续问答已启动(输入 q/quit/exit 退出)===\\n\")\n",
+ "while True:\n",
+ " try:\n",
+ " user_text = input(\"你:\").strip()\n",
+ " except EOFError:\n",
+ " print(\"\\n[结束对话]\")\n",
+ " break\n",
+ "\n",
+ " if not user_text:\n",
+ " continue\n",
+ " if user_text.lower() in {\"q\", \"quit\", \"exit\"}:\n",
+ " print(\"[结束对话]\")\n",
+ " break\n",
+ "\n",
+ " # 追加用户消息并生成\n",
+ " history.append({\"role\": \"user\", \"content\": user_text})\n",
+ " print(\"助手:\", end=\"\", flush=True)\n",
+ " try:\n",
+ " answer = generate_once(history)\n",
+ " except Exception as e:\n",
+ " print(f\"[生成出错] {e}\")\n",
+ " # 出错时回滚上一轮的 user 消息,继续循环\n",
+ " history.pop()\n",
+ " continue\n",
+ "\n",
+ " # 记录助手消息,维护上下文\n",
+ " history.append({\"role\": \"assistant\", \"content\": answer})\n"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": null,
+ "id": "4e781c15-5224-4d91-82c9-368c4dce48ff",
+ "metadata": {},
+ "outputs": [],
+ "source": []
+ }
+ ],
+ "metadata": {
+ "kernelspec": {
+ "display_name": "py39",
+ "language": "python",
+ "name": "py39"
+ },
+ "language_info": {
+ "codemirror_mode": {
+ "name": "ipython",
+ "version": 3
+ },
+ "file_extension": ".py",
+ "mimetype": "text/x-python",
+ "name": "python",
+ "nbconvert_exporter": "python",
+ "pygments_lexer": "ipython3",
+ "version": "3.9.23"
+ }
+ },
+ "nbformat": 4,
+ "nbformat_minor": 5
+}
diff --git a/Online/community/README.md b/Online/community/README.md
index 1230890..7c2dc84 100644
--- a/Online/community/README.md
+++ b/Online/community/README.md
@@ -17,4 +17,5 @@
| [VideoClassification](https://github.com/mindspore-courses/orange-pi-mindspore/tree/master/Online/community/VideoClassification) | 8.0.0.beta1 | 2.6.0 |8T16G |
| [MaskGeneration](https://github.com/mindspore-courses/orange-pi-mindspore/tree/master/Online/community/MaskGeneration) | 8.1.RC1 | 2.6.0 | 8T16G |
| [DocumentQuestionAnswering](https://github.com/mindspore-courses/orange-pi-mindspore/tree/master/Online/community/DocumentQuestionAnswering) | 8.0.0.beta1 | 2.6.0 | 20T24G |
+| [QuestionAnswering](https://github.com/mindspore-courses/orange-pi-mindspore/tree/master/Online/community/QuestionAnswering) | 8.0.0.beta1 | 2.6.0 | 20T24G |
From 1034ef469dbe05ab39d41ab9846fb123185cf81e Mon Sep 17 00:00:00 2001
From: snow2white <164228644@qq.com>
Date: Fri, 24 Oct 2025 14:01:15 +0800
Subject: [PATCH 2/5] 1024_v1
---
.DS_Store | Bin 6148 -> 0 bytes
{Online => Offline}/.DS_Store | Bin 6148 -> 6148 bytes
Online/README.md | 2 +-
Online/community/.DS_Store | Bin 8196 -> 0 bytes
Online/community/QuestionAnswering/.DS_Store | Bin 6148 -> 0 bytes
.../Question_Answering.ipynb | 16 ++++++++--------
Online/community/README.md | 2 +-
README.md | 1 +
8 files changed, 11 insertions(+), 10 deletions(-)
delete mode 100644 .DS_Store
rename {Online => Offline}/.DS_Store (91%)
delete mode 100644 Online/community/.DS_Store
delete mode 100644 Online/community/QuestionAnswering/.DS_Store
rename "Online/community/QuestionAnswering/\345\237\272\344\272\216Qwen1.5-0.5b\347\232\204\351\227\256\347\255\224\347\263\273\347\273\237.ipynb" => Online/community/QuestionAnswering/Question_Answering.ipynb (97%)
diff --git a/.DS_Store b/.DS_Store
deleted file mode 100644
index 0f2506ab4c9b9624bfd8d8febee3cd44624c476c..0000000000000000000000000000000000000000
GIT binary patch
literal 0
HcmV?d00001
literal 6148
zcmeHK%Wl&^6upz0#-;)V38Ze2EU~Rhh^k6eH*T6ND)Er&3KoEZjRUpndZO5A7EvUx
z;UD+~wtNZy!V1ovnW8u;EGvrUS~F)J_uR41*fSm?65UDigs4SCE)t`28`%}c{hU^;
zVOl((P%)lUNd2QszK^pNZ`)uMunPQZ3h=kvq^ER5ht#Kq?^nj?;bq|fY5S)#l-T
yr06yz{Gl#lye(#?xXHXDaTuc$B3@*=~OqjWy@ided#X8}8fi
zR8GS(DknuZ8o%b+iIiD2Nw|-9MCh8KwDftO#i`gv*;(X`aYwS5ESzP~1>=
zxSs0`TAQ=kZl}HFcRG9XEq}Jh<(=J~`P_3KJbJu;JUGkFbNPwoz|x1cPuU%Vm+%>d
z+Vfw8<2;l3N3=8NF0>g@K|LDM1)U&2M?Is6%4J;z$6A~PkB%{42jD&fZiAWBXF~i~
zV%)<>C1Q_}4=^W^N1+%f=?oDHI;}@&@O>_h=_m%G)cw>O@@3%-0nOSCP{6#m?#2zc
zS9^ts77vB^qIwv5{*ComOqid9z|=qMN&8&1B%B+b|{`3I9c
ZV<%XR9&_>LYs`i$6C2Dovvd6A2LR{?6?6aq
delta 104
zcmZoMXfc@J&&akhU^gQp+hjW?vB^qIwv0O_ComOqOH@~z85!s(7#UekzQrWX*fseZ
zlRRTLSd|WQu_6aU2}2P>B10xa9vG*4=Hw?Q<>V(ZFfa%(Ffev+p1|zNvYDOZFFyd(
C>KnEI
diff --git a/Online/README.md b/Online/README.md
index 9bab06b..94cb54b 100644
--- a/Online/README.md
+++ b/Online/README.md
@@ -76,7 +76,7 @@
| [VideoClassification](https://github.com/mindspore-courses/orange-pi-mindspore/tree/master/Online/community/VideoClassification) | 8.0.0.beta1 | 2.6.0 |8T16G |
| [MaskGeneration](https://github.com/mindspore-courses/orange-pi-mindspore/tree/master/Online/community/MaskGeneration) | 8.1.RC1 | 2.6.0 | 8T16G |
| [DocumentQuestionAnswering](https://github.com/mindspore-courses/orange-pi-mindspore/tree/master/Online/community/DocumentQuestionAnswering) | 8.0.0.beta1 | 2.6.0 | 20T24G |
-| [QuestionAnswering](https://github.com/mindspore-courses/orange-pi-mindspore/tree/master/Online/community/QuestionAnswering) | 8.0.0.beta1 | 2.6.0 | 20T24G |
+| [QuestionAnswering](https://github.com/mindspore-courses/orange-pi-mindspore/tree/master/Online/community/QuestionAnswering) | 8.1.RC1 | 2.6.0 | 20T24G |
diff --git a/Online/community/.DS_Store b/Online/community/.DS_Store
deleted file mode 100644
index c51defc3242be33eede4feb52a8bcb3909bbf321..0000000000000000000000000000000000000000
GIT binary patch
literal 0
HcmV?d00001
literal 8196
zcmeHMK~EGh6n+Ji*=#^y)!@No60Zc25E9~LcUd$Xh>;<9P=hnOD~=3PvNP+dgk;b9
zAN&hm{U!bvPx`&K3p2Bz%f%RM$?NO1{a)Lzubq7Z5s7-Y^?+!eh#Uy(nKH6-61TGq
zr7=@82Q7dnI;1wml+sh`4)wMbmI2FvWxz6E8L$le3k=|$&B?joy{}tsZW*u){Fe;y
z{oq1aSB>s#t*#DaDg=O@K($IJBMwj)*XXLzeXSJ~Hg)tM3{;p9LufeKUG5HDHM+00
zhLg~65@uv!A{3!U2hLU9NmRAAxn;mIFw6kQ?sup`lA4Iwv+;YI5=8PLT4Jg}66ztk
z@1Q28{mn==gGdHI^MR{D7JsUQ645L@LSG;FE)Z?np!XBd8wavle*t|&QCj1M!}%$2fJarw>NWhUB;;_f&*gsnEZ
zym%JIE!nHfZrn-~*3%76$tms4%pV`GE-x*(%gbvg3-0k6mseI-PEJbBt$X($ZtopL
zhq3$wUXX;j>}g6rpXR({BXIT3>%@_anPs+AqHTC$4ZE@hy$Jtm<#$v0@s|vnbL4?b
z{-VWs6S)WfJA|-D@>xjfL%{}na@NKaFnqGun;G%(LSJI<%_48ZUwwE}gmM44tNB^5
zU*v4f4SfF+r-^+#JD>8Yjcv>;rUR^I=q^w`okdlElIY6}j(n1NCvtwxWAiEGdx*I|
z_cRi?&!H-`i#fJ1wj6zIzD06YK!Z(|fh)(rxL(nG8G7U5@BdeB-F88i0n5M{17f1#
zHR^aC{M$c*zC$O@C(x!X{G=G
diff --git a/Online/community/QuestionAnswering/.DS_Store b/Online/community/QuestionAnswering/.DS_Store
deleted file mode 100644
index 93653d979e2804d8a6dc2d179328cf8cd6059993..0000000000000000000000000000000000000000
GIT binary patch
literal 0
HcmV?d00001
literal 6148
zcmeHKyGjF55Iv(Q0yZhNyFZ|q!Zs`+7B+$?*vhJf5KI~sQDh6j&d&ewPy7QvKnp$d
zP+Zou7BT}f=ib>l_hwJAlK~*(i<2QR0MMr^;z2{#^tpP+mLelWI?p)8IfmH47S=n}
zzbBNtcKEjYh&^1j_?vc4eR==%dUJ65e)q!t8Rod=9rez1c3e+qHQD;pNA%~9Fs{>5
zfm9$BNCi@XRA7+;+IwmJ6~~OJKq`<5d@G>eheB7Z0vkvBbTHTmK 注:在线案例指导请参考Online文件夹中的README文档
From bb1a2f582df3a6a1fc26feb1c826a978210439cb Mon Sep 17 00:00:00 2001
From: snow2white <164228644@qq.com>
Date: Fri, 24 Oct 2025 14:01:54 +0800
Subject: [PATCH 3/5] 1024_v1
---
Offline/.DS_Store | Bin 6148 -> 0 bytes
1 file changed, 0 insertions(+), 0 deletions(-)
delete mode 100644 Offline/.DS_Store
diff --git a/Offline/.DS_Store b/Offline/.DS_Store
deleted file mode 100644
index d269257ec3663b27548cd76fee9e86837d245119..0000000000000000000000000000000000000000
GIT binary patch
literal 0
HcmV?d00001
literal 6148
zcmeHK&u`N(6n^eHmS~#P1E5`yB5|Fz?uU>Nm(X>G9k?tA4jU@Xl8uPWp4yZORh4pt
zzlIxs3jYp#&-M_Z@i2W==roPY&kuFnI8I=h?~N
zeR-wLC;QJyVWnEz@OT5C5iC*SLo(8((U<6DW{CBz>4I_^!8Mf2kIRNuUy#+*>V%G<
zV4q$9x1n;@WT;2KF;Eo~1w;W+;8qpzJ7KVXtFy@9qJSvyFDk(MLj-4xJ=PBG)`7xa
z0f22ZTSLqrjLeBV#vW^j=z%Fm1v;woR}AIoXpeke?6G#}=%oDRL;0DNzo95QJI0S}
zI;q&9l%jwr&{SZ>RXcqCAN~3M-y}&*6c7deD+N@$pY(fpB!9LpJRG035&SKjjq_@U
lKPd?8QH)$ZiZ|ib&>nFBj6K#4(E^hX0V{(PqQGBO;0N!Mbin`s
From c7dbfd6ff7715768a0c712bc39f722b7ae37b6f1 Mon Sep 17 00:00:00 2001
From: snow2white <164228644@qq.com>
Date: Fri, 24 Oct 2025 14:08:17 +0800
Subject: [PATCH 4/5] 1024_v1
---
Online/community/QuestionAnswering/README.md | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/Online/community/QuestionAnswering/README.md b/Online/community/QuestionAnswering/README.md
index b71849a..a2c5560 100644
--- a/Online/community/QuestionAnswering/README.md
+++ b/Online/community/QuestionAnswering/README.md
@@ -12,7 +12,7 @@
开发板:香橙派Aipro或其他同硬件开发板
开发板镜像: Ubuntu镜像
-`CANN Toolkit/Kernels:8.0.0.beta1`
+`CANN Toolkit/Kernels:8.1RC1`
`MindSpore: 2.6.0`
`MindSpore NLP: 0.4.1`
`Python: 3.9`
From 5078723bf0a087eac35910694d014fbec3afd683 Mon Sep 17 00:00:00 2001
From: snow2white <164228644@qq.com>
Date: Fri, 24 Oct 2025 14:11:27 +0800
Subject: [PATCH 5/5] 1024_v1
---
Online/community/QuestionAnswering/Question_Answering.ipynb | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/Online/community/QuestionAnswering/Question_Answering.ipynb b/Online/community/QuestionAnswering/Question_Answering.ipynb
index 87e47ea..76831bd 100644
--- a/Online/community/QuestionAnswering/Question_Answering.ipynb
+++ b/Online/community/QuestionAnswering/Question_Answering.ipynb
@@ -24,7 +24,7 @@
"开发板镜像: Ubuntu镜像 \n",
"CANN Toolkit/Kernels:8.1.RC1 \n",
"MindSpore: 2.6.0 \n",
- "MindNLP: 0.4.1 \n",
+ "MindSpore NLP: 0.4.1 \n",
"Python: 3.9\n",
"\n",
"### 镜像烧录\n",