feat(browser): 实现 AI 推理功能并优化聊天界面

- 新增 AI 推理相关功能,包括模型加载、上下文创建和消息处理
- 设计并实现聊天界面的前端逻辑,支持流式响应和消息折叠
- 集成 KaTeX、highlight.js 和 marked 库,支持数学公式和代码高亮显示
- 添加错误处理和友好的用户交互提示
This commit is contained in:
2025-03-23 18:48:13 +08:00
parent d116e80cbf
commit d53fe66e37
7 changed files with 894 additions and 15 deletions

View File

@@ -130,6 +130,44 @@ public class LM {
*/
public static native void llamaFreeContext(long ctxHandle);
public static String inference(long modelHandle ,
long ctxHandle,
float temperature,
String prompt,
String system,
MessageCallback messageCallback, boolean isContinue){
//if (isContinue){
// return inference(modelHandle,
// ctxHandle,
// temperature,
// 0.1f,
// 100,
// 0.9f,
// 0,
// 64,
// 1.1f,
// 0.0f,
// 0.0f,
// system + "用户:" + prompt + "\n请继续回答",
// messageCallback
// );
//}
return inference(modelHandle,
ctxHandle,
temperature,
0.1f,
100,
0.9f,
0,
64,
1.1f,
0.0f,
0.0f,
"{问题}" + prompt,
messageCallback
);
}
public static String inference(long modelHandle ,
long ctxHandle,
float temperature,
@@ -147,7 +185,7 @@ public class LM {
1.1f,
0.0f,
0.0f,
system + "\n用户" + prompt + "\n助手",
system + "\n用户" + prompt + "\n请开始回答",
messageCallback
);
}