llm-universe-Task5系统评估和优化

文章摘要

Bpple-GPT


Task 5 系统评估和优化

image-20240617105110385.png


评估优化流程

在具体的大模型应用开发中,我们通过寻找并优化Bad Cases来提高系统性能。我们将每个Bad Case加入到验证集中,并在每次优化后重新验证所有案例,以确保系统不会在原有Good Case上失去能力或表现降级。当验证集较小时,我们可以通过人工评估系统输出的优劣。但随着验证集不断扩张,我们需要采用自动评估的方法来评估系统性能。在本文中,我们将介绍人工评估的思路,深入探讨大模型自动评估的方法,并在本系统上进行实际验证,全面评估系统表现,为优化迭代做准备。接下来,我们将加载向量数据库和检索链。

人工评测

  • 量化评估
  • 具体评估

基于gradio

在上一个任务Task 4时候我们跟着DW的教程基于Streamlit搭建并部署了一个应用,如下图所示:

image-20240626222019668.png

随着深入地学习,又遇见了一个新的广泛应用的框架,我尝试一下

具体实现代码如下:

  • 采用DW封装的--zhipuai_llm.py
  • 采用DW封装的--zhipuai_embedding.py
 import gradio as gr
  from zhipuai_llm import ZhipuAILLM
  from zhipuai import ZhipuAI
  from dotenv import load_dotenv, find_dotenv
  _ = load_dotenv(find_dotenv())    
  import os
  
  zhipuai_api_key = os.environ['ZHIPUAI_API_KEY']
  
  # 初始化 ZhipuAI 客户端
  client = ZhipuAI(api_key=zhipuai_api_key)
  
  # 定义模型名称列表
  model_options = ["glm-4-0520", "glm-3-1105", "glm-2-0301"]
  
  # 生成响应的函数
  def generate_response(input_text, model_name, chat_history):
      llm = ZhipuAILLM(model=model_name, temperature=0.3, api_key=zhipuai_api_key)
      response = llm(input_text)
      chat_history.append(("User", input_text))
      chat_history.append(("AI", response))
      return chat_history, chat_history
  
  # 生成AI绘画的函数
  def generate_art(prompt):
      response = client.images.generations(
          model="cogview-3",
          prompt=prompt,
      )
      image_url = response.data[0].url
      return image_url
  
  # 定义介绍信息
  def introduction():
      return "这是一个基于 Gradio 搭建的对话和绘画应用,使用的是智谱AI的大模型。请选择模型并输入文本进行对话或生成绘画。"
  
  # 搭建 Gradio 界面
  with gr.Blocks(css="""
      body {font-family: 'Arial', sans-serif; background-color: #f4f4f9;}
      h1 {color: #333; text-align: center; margin-top: 20px;}
      .container {max-width: 800px; margin: auto; padding: 20px;}
      .gr-button {background-color: #4CAF50; color: white; border: none; padding: 10px 20px; cursor: pointer;}
      .gr-button:hover {background-color: #45a049;}
      .gr-dropdown, .gr-textbox {width: 100%;}
      .gr-chatbot {max-height: 400px; overflow-y: auto; background-color: white; padding: 20px; border-radius: 10px; box-shadow: 0 0 10px rgba(0, 0, 0, 0.1);}
  """) as demo:
      gr.Markdown("# 大模型对话和绘画应用")
      gr.Markdown(introduction())
  
      with gr.Tabs():
          with gr.TabItem("对话"):
              with gr.Row():
                  model_choice = gr.Dropdown(choices=model_options, value=model_options[0], label="选择模型")
              
              chatbot = gr.Chatbot(label="对话", elem_id="chatbot")
              input_text = gr.Textbox(label="输入文本", placeholder="请输入你的问题...", lines=1)
              submit_button = gr.Button("提交")
  
              chat_history_state = gr.State([])  # 初始化对话历史
  
              # 设置按钮点击事件
              submit_button.click(generate_response, inputs=[input_text, model_choice, chat_history_state], outputs=[chat_history_state, chatbot])
  
          with gr.TabItem("AI绘画"):
              art_prompt = gr.Textbox(label="绘画提示词", placeholder="请输入绘画提示词...", lines=1)
              generate_button = gr.Button("生成绘画")
              art_output = gr.Image(label="生成的绘画")
  
              # 设置生成绘画按钮点击事件
              generate_button.click(generate_art, inputs=art_prompt, outputs=art_output)
  
  # 启动 Gradio 应用
  demo.launch(share=True)

image-20240628201229240

image-20240628201930177

 def generate_response(input_text, model_name, chat_history):
      llm = ZhipuAILLM(model=model_name, temperature=0.3, api_key=zhipuai_api_key)
      response = llm(input_text)
      chat_history.append(("User", input_text))
      chat_history.append(("AI", response))
      return chat_history, chat_history
  
  # 生成AI绘画的函数
  def generate_art(prompt):
      response = client.images.generations(
          model="cogview-3",
          prompt=prompt,
      )
      image_url = response.data[0].url
      return image_url

两个函数 generate_responsegenerate_art接入智谱的api进行内容生成


用键盘敲击出的不只是字符,更是一段段生活的剪影、一个个心底的梦想。希望我的文字能像一束光,在您阅读的瞬间,照亮某个角落,带来一丝温暖与共鸣。

BX33661

isfp 探险家

站长

不具版权性
不具时效性

文章内容不具时效性。若文章内容有错误之处,请您批评指正。


目录

欢迎来到Bpple的站点,为您导航全站动态

65 文章数
20 分类数
44 评论数
15标签数
最近评论
bpple

bpple


一切顺利

fetain

fetain


good luck

bx

bx


good luck

热门文章

Emoji收集

2024-11-01

551
Hello Halo

2024-10-30

532
本地部署LLM

2024-08-22

511
Uptime Kuma

2024-11-29

507
241

访问统计