Chainlit快速实现AI对话应用的界面定制化教程

news2024/11/15 8:32:11

前言

本文主要讲解如何自定义chainlit实现的网页界面的中的一些可以自定修改的样式的实现教程。比如修改自己的logo网站图标或者主题等

翻译

chainlit 默认网页界面显示的是英文,如果我们想显示为其他语言可以进行以下操作。
翻译文件位于项目根目录下的.chainlit/translations目录中。文件以语言代码命名,例如en-US.json英语(美国)。

自定义 UI 文本

除了标准翻译之外,您还可以自定义 UI 中使用的前端组件的文本。每个 UI 元素都与翻译文件中的唯一翻译键相关联。通过修改这些键,您可以根据需要个性化或本地化 UI 文本。

例如,要将导航选项卡的标签从“自述文件”更改为“文档”,请在翻译文件中找到相应的键(例如components.organisms.header.readme)并更新其值:

"components.organisms.header.readme": "Documentation"

添加新语言

除了修改.chainlit/translations目录下默认的json配置文件外,我们还可以通过新语言的方式,实现国际化。代码会更具用户的电脑系统自动匹配国家和语言。
要添加新语言,请在.chainlit/translations目录中创建一个新的json文件,并以语言代码作为文件名。语言代码的格式应为languageCode-COUNTRYCODE,例如en-US英语(美国)或en-GB英语(英国) zh-CN 中文(中国)。
在这里插入图片描述

检查翻译

如果要检查新添加的语言翻译json文件格式是否正确,请运行以下命令:

chainlit lint-translations

翻译 chainlit.md 文件

您可以为chainlit.md文件定义多种翻译。例如chainlit_pt-BR.md葡萄牙语(巴西)和chainlit_es-ES.md西班牙语(西班牙)。文件将根据浏览器的语言加载,chainlit.md如果没有可用的翻译,则默认为浏览器的语言。

重置

要重置翻译,请删除.chainlit/translations目录并重新启动 Chainlit 应用程序:

chainlit run my-app.py

Logo

Chainlit 应用程序支持暗模式和亮模式。为此,请准备两个版本的徽标,分别命名为logo_dark.pnglogo_light.png。将这些徽标放在/public应用程序旁边的文件夹中。重新启动应用程序后,您的自定义徽标应会相应显示。

网站图标

为了进一步提升品牌形象,你还可以更新应用的favicon.ico。将一个名为 favicon.ioc 的图像文件放置在与你的应用相邻的public夹中。重启应用后,新的favicon图标就会生效。

头像

默认助手头像为应用程序的图标。

但是,您可以通过将图像文件放入文件夹中来自定义头像/public/avatars。图像文件应以消息作者的名字命名。例如,如果作者是My Assistant,则头像应命名为my_assistant.png

public/
└── avatars/
    └── my_assistant.png

代码中的使用:


author = "My Assistant"


@cl.on_chat_start
async def start_chat():
    content = "你好,我是泰山AI智能客服,有什么可以帮助您吗?"
    msg = cl.Message(content=content, author=author)
    await msg.send()


@cl.on_message
async def on_message(message: cl.Message):
    messages  = [
          {
              "role": "user",
              "content": [{"type": "text", "text": message.content}, *images_content],
          }
      ]
    msg = cl.Message(content=messages.content, author=author)
    await msg.send()

主题

想要刷新应用的外观?您可以轻松更改.chainlit目录下的config.toml文件中的默认主题颜色。

目前,您可以自由修改:

  • 背景颜色:此选项允许您更改应用程序背景的颜色。
  • 纸张颜色:这会改变应用程序内“纸张”元素的颜色,例如导航栏、小部件等。
  • 主色调:包括三种色调 - 主色、深色和浅色。这些颜色主要用于交互式界面元素。

如果您使用 -w(文件观察器)启动 Chainlit 应用程序,则每次更新主题时它都会刷新!

默认主题

要设置默认主题,请导航到文件[UI.theme]中的部分config.toml并更新default值。

[UI.theme]
    default = "dark"

浅色主题修改

要修改浅色主题,请查找或创建部分[UI.theme.light]并根据您的喜好更新颜色。

[UI.theme.light]
    background = "#110061"
    paper = "#FFFFFF"

    [UI.theme.light.primary]
        main = "#110061"
        dark = "#180039"
        light = "#FFE7EB"

暗色主题修改

[UI.theme.dark]
    background = "#FAFAFA"
    paper = "#FFFFFF"

    [UI.theme.dark.primary]
        main = "#A80061"
        dark = "#380039"
        light = "#FFE7EB"

网站(助理)名称和描述

[UI]
# 网站(助理)的名字
name = "泰山AI"

# 助手的描述信息。这用于HTML标签中。
description = "泰山出品的人工智能AI助手"

# 默认情况下,大型内容会被折叠以获得更简洁的用户界面。
default_collapse_content = true

# 在用户界面上隐藏思考过程的细节。
hide_cot = false

字体

要修改网页界面中的字体为自定义字体,请修改.chainlit/config.toml中的配置设置。

[UI]
# This should be a google font url
custom_font = "https://fonts.googleapis.com/css2?family=Inter:wght@400;500;700&display=swap"

然后,更新主题的字体系列以使用自定义字体。

[UI.theme]
    font_family = "Inter, sans-serif"

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1981553.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

02 部署LVS-DR群集

2.1:直接路由模式(LVS-DR) 实验环境 关闭所有测试环境的防火墙 [rootbogon ~]# systemctl stop firewalld [rootbogon ~]# setenforce 0 1.配置LVS调速器 (1)配置虚拟IP地址VIP [rootlvs ~]# cd /etc/sysconfig/n…

53 程序控制结构精彩案例

1 输入若干成绩,求所有成绩的平均分。每输入一个成绩后询问是否继续输入下一个成绩,回答 yes 就继续输入下一个成绩,回答 no 就停止输入成绩。 scores [] # 使用列表存放临时数据 while True:x input(score: )try:scores.append(float(x)…

CEP 复杂事件处理引擎入门:初级高频量价因子策略的实现

高频交易(High-Frequency Trading, HFT)作为现代金融市场中的重要组成部分,以其高速、自动化和复杂的算法交易策略而著称。高频交易策略通过分析大量实时变化的市场数据,利用市场的微小价格波动迅速做出交易决策,从而在…

【游戏引擎之路】登神长阶(九)——《3D游戏编程大师技巧》:我想成为游戏之神!

5月20日-6月4日:攻克2D物理引擎。 6月4日-6月13日:攻克《3D数学基础》。 6月13日-6月20日:攻克《3D图形教程》。 6月21日-6月22日:攻克《Raycasting游戏教程》。 6月23日-7月1日:攻克《Windows游戏编程大师技巧》。 7月…

浅谈如何将本地代码提交至gitee

文章目录 一、下载git工具二、新建文件夹三、输入命令 [默认提交至master分支] 一、下载git工具 git官网 二、新建文件夹 随便在本机的任意位置新建一个文件夹都行。我以我本机的桌面新建一个文件夹为例,此文件夹可随意命名。 点击该文件夹,右键——…

大奖放送 | AI编程达人秀视频文章征集大赛来啦!

AI Coding,可以有多少种打开玩法?腾讯云AI代码助手是一款辅助编码工具,基于混元大模型,提供技术对话、代码补全、代码诊断和优化等能力,为你生成优质代码,帮你解决技术难题,提升编码效率。 我…

elasticsearch的学习(二):Java api操作elasticsearch

简介 使用Java api操作elasticsearch 创建maven项目 pom.xml文件 <?xml version"1.0" encoding"UTF-8"?><project xmlns"http://maven.apache.org/POM/4.0.0" xmlns:xsi"http://www.w3.org/2001/XMLSchema-instance"xsi…

通过率100%!讯方技术河南经贸职业学院华为云计算HCIE订单班取得阶段性成果!

近日&#xff0c;由讯方技术与河南经贸职业学院计算机工程学院联合打造的华为云计算HCIE订单班传来喜讯。在该订单班中&#xff0c;首批参与HCIE实验考试的9名学生凭借扎实的专业知识和优秀的技能水平&#xff0c;全员顺利通过实验考试&#xff0c;通过率达到100%&#xff0c;体…

yolov8 剪枝

yolov8n 初始&#xff1a; YOLOv8n summary (fused): 185 layers, 3151904 parameters, 31936 gradients, 8.7 GFLOPs

正信晟锦:怎么追回欠债多年的钱

在这个世界上&#xff0c;最轻松的或许就是借钱时的许诺&#xff0c;而最难的&#xff0c;莫过于债务回收时的争取。尤其是在牵涉到追回那些欠债多年的旧账时&#xff0c;我们似乎总能更深地体会到“时间是把杀猪刀”的无奈。如何巧妙地追回这些遥不可及的欠款?这既是一场策略…

CSP - S 2024 模拟赛6补题报告

C S P − S 2024 模拟赛 6 补题报告 2024 年 8 月 5 日 − 2023 年 8 月 5 日 b y 邓时飏 CSP \ - \ S \ \ 2024 \ \ 模拟赛6 \ \ 补题报告 \\ 2024年8月5日 - 2023年8月5日 \\ by \ \ \ 邓时飏 CSP − S 2024 模拟赛6 补题报告2024年8月5日−2023年8月5日by 邓时飏 一、…

zotero安装与使用

文献管理工具&#xff09; Zotero软件官网https://www.zotero.org/download&#xff0c;不修改安装位置&#xff0c;默认安装就行&#xff1b;安装完成官网直接邮箱注册一个账号&#xff0c;软件登陆账号:编辑-首选项-同步 修改论文保存位置&#xff0c;有从其它电脑拷贝过来的…

强力巨彩又上新了!室内LED全彩显示屏尽“显”新体验

随着显示技术的进步和万物互联时代的到来&#xff0c;LED全彩显示屏在广告传媒、体育场馆、交通诱导、舞台演出等领域的应用持续扩大。强力巨彩更新迭代&#xff0c;室内LED全彩显示屏再次上新&#xff0c;其融合前沿GOB镀膜工艺&#xff0c;在防护性、成像质量、互动体验及设计…

视频美颜SDK与直播美颜插件在实时视频中的应用

视频美颜技术作为提升视频质量的重要手段&#xff0c;已经成为了许多视频和直播应用中不可或缺的一部分。本篇文章&#xff0c;笔者将探讨视频美颜SDK与直播美颜插件在实时视频中的应用&#xff0c;并分析其在用户体验和技术实现方面的重要性。 一、视频美颜SDK的应用场景 视…

el-tree懒加载状态下实现搜索筛选(纯前端)

1.效果图 &#xff08;1&#xff09;初始状态 &#xff08;2&#xff09;筛选后 2.代码 <template><div><el-inputplaceholder"输入关键字进行过滤"v-model"filterText"input"searchValue"></el-input><el-tree…

AI人工智能 时间序列数据介绍

AI人工智能 时间序列数据介绍 预测给定输入序列中的下一个是机器学习中的另一个重要概念。 本章为您提供有关分析时间序列数据的详细说明。 时间序列数据介绍 时间序列数据表示处于一系列特定时间间隔的数据。 如果我们想在机器学习中构建序列预测&#xff0c;那么必须处理连续…

DDei在线设计器-加载数据

加载数据 本示例演示了怎样加载已有的JSON到设计器中。 如需了解详细的API教程以及参数说明&#xff0c;请参考DDei文档 外部数据JSON demo.vue <script setup lang"ts"> import DDeiEditorView from "ddei-editor"; import { DDeiCoreStandLayou…

魔塔社区程序的`datasets.utils`导入`_datasets_server`错误问题的解决办法

运行魔塔社区的的一个识别图像文件中文字的模型程序&#xff1a; 出现如下的错误提示&#xff1a; from datasets.utils import _datasets_server,file_utils ImportError: cannot import name _datasets_server from datasets.utils (D:\PycharmProjects\minicpm_cuda_test\ve…

C语言指针详解(三)目录版

C语言指针详解&#xff08;三&#xff09;目录版 1、字符指针变量1.1、字符指针变量的一般应用1.2、常量字符串1.3、常量字符串与普通字符串的区别1.3.1 常量字符串的不可修改性1.3.2 常量字符串的存储 2、数组指针变量2.1、数组指针变量定义2.2、数组指针变量的初始化 3、二维…

数据科学家必须掌握的12个Python功能

Python 已经成为数据科学家的必选语言&#xff0c;从数据处理到机器学习&#xff0c;它几乎无所不能。本文将探讨一些Python特性&#xff0c;这些特性不仅能帮助你编写更高效、更易读、更易维护的代码&#xff0c;还特别适合数据科学的需求&#xff0c;使你的代码简洁且优雅。 …