Compare commits
No commits in common. "b1f122e874d2f8945ae2b598c066f590bec4096c" and "cd8e272e034682260652fea3b8870e4df66ed869" have entirely different histories.
b1f122e874
...
cd8e272e03
@ -281,10 +281,6 @@ bricks.LlmIO = class extends bricks.VBox {
|
|||||||
tip:'add new model',
|
tip:'add new model',
|
||||||
css:'clickable'
|
css:'clickable'
|
||||||
});
|
});
|
||||||
this.inputshower = new bricks.UserInputView({
|
|
||||||
input_fields:this.input_fields,
|
|
||||||
width: '100%'
|
|
||||||
});
|
|
||||||
this.input_fields.forEach(f => {
|
this.input_fields.forEach(f => {
|
||||||
if (f.name == 'model') this.model_inputed = True;
|
if (f.name == 'model') this.model_inputed = True;
|
||||||
});
|
});
|
||||||
@ -439,12 +435,25 @@ bricks.LlmIO = class extends bricks.VBox {
|
|||||||
}
|
}
|
||||||
async handle_input(event){
|
async handle_input(event){
|
||||||
var params = event.params;
|
var params = event.params;
|
||||||
this.inputshower.show_input(params)
|
await this.show_input(params);
|
||||||
for(var i=0;i<this.llmmodels.length;i++){
|
for(var i=0;i<this.llmmodels.length;i++){
|
||||||
var lm = this.llmmodels[i];
|
var lm = this.llmmodels[i];
|
||||||
schedule_once(lm.model_inputed.bind(lm, params), 0.01);
|
schedule_once(lm.model_inputed.bind(lm, params), 0.01);
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
async show_input(params){
|
||||||
|
var box = new bricks.HBox({width:'100%'});
|
||||||
|
var data = inputdata2dic(params);
|
||||||
|
console.log('data=', data, 'input_view=', this.input_view);
|
||||||
|
var w = await bricks.widgetBuild(this.input_view, this.o_w, data);
|
||||||
|
w.set_css(this.msg_css||'user_msg');
|
||||||
|
w.set_css('filler');
|
||||||
|
var img = new bricks.Svg({rate:2,url:this.user_icon||bricks_resource('imgs/chat-user.svg')});
|
||||||
|
// box.add_widget(new bricks.BlankIcon({rate:2, flexShrink:0}));
|
||||||
|
box.add_widget(w);
|
||||||
|
box.add_widget(img);
|
||||||
|
this.o_w.add_widget(box);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
bricks.Factory.register('LlmIO', bricks.LlmIO);
|
bricks.Factory.register('LlmIO', bricks.LlmIO);
|
||||||
|
|||||||
@ -1,53 +1,5 @@
|
|||||||
var bricks = window.bricks || {};
|
var bricks = window.bricks || {};
|
||||||
|
|
||||||
/*
|
|
||||||
bricks.UserInputView
|
|
||||||
将所有输入转换成一个Markdown,音视频媒体数据独立显示
|
|
||||||
*/
|
|
||||||
bricks.UserInputView = class extends bricks.VBox {
|
|
||||||
constructor(opts){
|
|
||||||
super(opts);
|
|
||||||
this.v_w = null;
|
|
||||||
this.a_v = null;
|
|
||||||
this.images = [];
|
|
||||||
}
|
|
||||||
show_input(data){
|
|
||||||
var mdtext = '';
|
|
||||||
this.input_fields.forEach(f =>{
|
|
||||||
if (data[f.name]){
|
|
||||||
if (f.name.startsWith('video')){
|
|
||||||
this.v_w = new bricks.VideoPlayer({
|
|
||||||
url:data[f.name],
|
|
||||||
autoplay:true
|
|
||||||
width: '100%'
|
|
||||||
});
|
|
||||||
} else if (f.name.startsWith('audio'){
|
|
||||||
this.a_w = new bricks.AudioPlayer({
|
|
||||||
url:data[f.name],
|
|
||||||
autoplay:true
|
|
||||||
width: '100%'
|
|
||||||
});
|
|
||||||
} else if (f.name.startsWidth('image'){
|
|
||||||
mdtext += '\n\n';
|
|
||||||
} else {
|
|
||||||
mdtext += '\n# ' + f.label || f.name + '\n```' + data[f.name] + '\n```\n';
|
|
||||||
}
|
|
||||||
}
|
|
||||||
});
|
|
||||||
this.clear_widgets();
|
|
||||||
var w = new bricks.MdWidget({
|
|
||||||
width: '100%',
|
|
||||||
mdtext:mdtext
|
|
||||||
});
|
|
||||||
this.add_widget(w);
|
|
||||||
if (this.v_w){
|
|
||||||
this.add_widget(this.v_w);
|
|
||||||
}
|
|
||||||
if (this.a_w){
|
|
||||||
this.add_widget(this.a_w);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
/*
|
/*
|
||||||
根据大模型返回数据自动构造显示内容
|
根据大模型返回数据自动构造显示内容
|
||||||
大模型返回json格式数据,下面的属性可选
|
大模型返回json格式数据,下面的属性可选
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user