mirror of
https://github.com/vegu-ai/talemate.git
synced 2025-12-16 11:47:48 +01:00
* dolphin mistral template * removate trailing \n before attaching the model response * improve prompt and validator for generated human age * fix issue where errors during character creation process would not be communicated to the ux and the character creator would appear stuck * add dolphin mistral to list * add talemate_env * poetry relock * add json schema for talemate scene files * fix issues with pydantic after version upgrade * add json extrac util functions * fix pydantic model * use extract json function * scene generator, better scene name prompt * OpenHermes-2-Mistral * alpaca base template Amethyst 20B template * character description is no longer part of the sheet and needs to be added separately * fix pydantic validation * fix issue where sometimes partial emote strings were kept at the end of dialogue * no need to commit character name to memory * dedupe prompts * clean up extra linebreaks in prompts * experimental editor agent agent signals first progress * take out hardcoded example * amethyst llm prompt template * editor agent disableable agent edit modal tweaks * world state agent agent action config schema * director agent disableable remove automatic actions config from ux (deprecated) * fix responsive update when toggling enable on or off in agent dialog * prompt adjustments fix divine intellect preset (mirostat values were way off) fix world state regenerating every turn regardless of setting * move templates for world state from summarizer to worldstate agent * conversation agent generation lenght setting * conversation agent jiggle attribute (randomize offset to certain inference parameters) * relabel * scene cover image set to cover as much space as it can * add character sheet to dialogue example generate prompt * character creator agent mixin use set_processing * add <|im_end|> to stopping strings * add random number gen to template functions * SynthIA and Tiefighter * create new persisted characters ouf of world state natural flow option for conversation agent to help guide multi character conversations * conversation agent natural flow improvements * fix bug with 1h time passage option * some templates * poetry relock * fix config validation * fix issues when detemrining scene history context length to stay within budget * fixes to world state json parsing fixes to conversation context length * remove unused import * update windows install scripts * zephyr * </s> stopping string * dialog cleanup utils improved * add agents and clients key to the config example
100 lines
3.3 KiB
Vue
100 lines
3.3 KiB
Vue
<template>
|
|
<v-dialog v-model="localDialog" max-width="600px">
|
|
<v-card>
|
|
<v-card-title>
|
|
|
|
<v-row>
|
|
<v-col cols="9">
|
|
<v-icon>mdi-transit-connection-variant</v-icon>
|
|
{{ agent.label }}
|
|
</v-col>
|
|
<v-col cols="3" class="text-right">
|
|
<v-checkbox :label="enabledLabel()" hide-details density="compact" color="green" v-model="agent.enabled"
|
|
v-if="agent.data.has_toggle"></v-checkbox>
|
|
</v-col>
|
|
</v-row>
|
|
|
|
|
|
|
|
</v-card-title>
|
|
<v-card-text>
|
|
<v-select v-model="agent.client" :items="agent.data.client" label="Client"></v-select>
|
|
|
|
<v-alert type="warning" variant="tonal" density="compact" v-if="agent.data.experimental">
|
|
This agent is currently experimental and may significantly decrease performance and / or require
|
|
strong LLMs to function properly.
|
|
</v-alert>
|
|
|
|
<v-card v-for="(action, key) in agent.actions" :key="key" density="compact">
|
|
<v-card-subtitle>
|
|
<v-checkbox :label="agent.data.actions[key].label" hide-details density="compact" color="green" v-model="action.enabled"></v-checkbox>
|
|
</v-card-subtitle>
|
|
<v-card-text>
|
|
{{ agent.data.actions[key].description }}
|
|
<div v-for="(action_config, config_key) in agent.data.actions[key].config" :key="config_key">
|
|
<!-- render config widgets based on action_config.type (int, str, bool, float) -->
|
|
<v-text-field v-if="action_config.type === 'str'" v-model="action.config[config_key].value" :label="action_config.label" :hint="action_config.description" density="compact"></v-text-field>
|
|
<v-slider v-if="action_config.type === 'number' && action_config.step !== null" v-model="action.config[config_key].value" :label="action_config.label" :hint="action_config.description" :min="action_config.min" :max="action_config.max" :step="action_config.step" density="compact" thumb-label></v-slider>
|
|
<v-checkbox v-if="action_config.type === 'bool'" v-model="action.config[config_key].value" :label="action_config.label" :hint="action_config.description" density="compact"></v-checkbox>
|
|
</div>
|
|
</v-card-text>
|
|
</v-card>
|
|
|
|
</v-card-text>
|
|
<v-card-actions>
|
|
<v-spacer></v-spacer>
|
|
<v-btn color="primary" @click="close">Close</v-btn>
|
|
<v-btn color="primary" @click="save">Save</v-btn>
|
|
</v-card-actions>
|
|
</v-card>
|
|
</v-dialog>
|
|
</template>
|
|
|
|
<script>
|
|
export default {
|
|
props: {
|
|
dialog: Boolean,
|
|
formTitle: String
|
|
},
|
|
inject: ['state'],
|
|
data() {
|
|
return {
|
|
localDialog: this.state.dialog,
|
|
agent: { ...this.state.currentAgent }
|
|
};
|
|
},
|
|
watch: {
|
|
'state.dialog': {
|
|
immediate: true,
|
|
handler(newVal) {
|
|
this.localDialog = newVal;
|
|
}
|
|
},
|
|
'state.currentAgent': {
|
|
immediate: true,
|
|
handler(newVal) {
|
|
this.agent = { ...newVal };
|
|
}
|
|
},
|
|
localDialog(newVal) {
|
|
this.$emit('update:dialog', newVal);
|
|
}
|
|
},
|
|
methods: {
|
|
enabledLabel() {
|
|
if (this.agent.enabled) {
|
|
return 'Enabled';
|
|
} else {
|
|
return 'Disabled';
|
|
}
|
|
},
|
|
close() {
|
|
this.$emit('update:dialog', false);
|
|
},
|
|
save() {
|
|
this.$emit('save', this.agent);
|
|
this.close();
|
|
}
|
|
}
|
|
}
|
|
</script> |