首页 > 其他分享 >2024.1.14-每日进度笔记

2024.1.14-每日进度笔记

时间:2024-01-14 17:01:03浏览次数:23  
标签:2024.1 14 show 笔记 result erniebot path input line

今天,我主要尝试了对之前的几个python脚本进行整合,使得可以输入图片路径,题目,总分进行评价

 

参考:百度文心一言的回复

 

# -*- coding: utf-8 -*-
import os
import sys
import erniebot
from PIL import Image
from paddleocr import PaddleOCR, draw_ocr


def baidu_paddleocr(input_path, output_path="result.jpg"):
    ocr = PaddleOCR(use_angle_cls=True, lang="ch", show_log=False)
    img_path = input_path
    result = ocr.ocr(img_path, cls=True)
    result = result[0]
    image = Image.open(img_path).convert('RGB')
    boxes = [line[0] for line in result]
    txts = [line[1][0] for line in result]
    scores = [line[1][1] for line in result]
    im_show = draw_ocr(image, boxes, txts, scores, font_path='doc/fonts/simfang.ttf')
    im_show = Image.fromarray(im_show)
    im_show.save(output_path)
    # print(os.path.abspath(output_path))
    return " ".join(txts)


def baidu_erniebot(input_content):
    erniebot.api_type = "aistudio"
    erniebot.access_token = "f181af0e3e5dcd57a0dd671b475cb39472c13bb4"
    response = erniebot.ChatCompletion.create(model="ernie-3.5", messages=[{"role": "user", "content": input_content}])
    return response.get_result()


def getScore(input_path, question, total_score):
    input_content = "题目:" + question + "答案:" + baidu_paddleocr(
        input_path) + "总分:" + total_score + "分。请以”分数:数字+分,评语:评语”的格式给出回复。"
    return baidu_erniebot(input_content)


if __name__ == "__main__":
    if len(sys.argv) == 4:
        input_path = sys.argv[1]
        question = sys.argv[2]
        total_score = sys.argv[3]
        print(getScore(input_path, question, total_score))
    else:
        print("ERROR")
'''
D:\softdata\Anaconda_envs\envs\paddle_env\python.exe D:\develop\PycharmProjects\paddle\test4.py D:\\test0114.png 123456 5

'''

 

 

标签:2024.1,14,show,笔记,result,erniebot,path,input,line
From: https://www.cnblogs.com/zhangxutong/p/17963891

相关文章

  • CF-514-D-单调队列
    514-D题目大意给定\(n\)个人,每个人有\(m\)个属性,第\(i\)个人的第\(j\)个属性值为\(a[i][j]\)。最多可以执行\(k\)次操作,每次操作选定一个属性,把所有人的该属性减\(1\),求一段最长的区间,满足执行所有操作之后该区间中所有人的所有属性全部为\(0\)。Solution转换一下思考方向,求......
  • [刷题班] LeetCode1480. 一维数组的动态和
    题目描述思路:前缀和前缀和数组(prefixSum)的构造方法一:classSolution{publicint[]runningSum(int[]nums){int[]preSum=newint[nums.length];preSum[0]=nums[0];for(inti=1;i<nums.length;i++){preSum[i]......
  • 在笔记本电脑上跑清华chatglm大语言模型
    环境:windows10以上系统,安装Linux子系统下载这个文件,双击,安装:https://wslstorestorage.blob.core.windows.net/wslblob/wsl_update_x64.msisudosed-i's/deb.debian.org/mirrors.ustc.edu.cn/g'/etc/apt/sources.listsudodpkg-reconfigurelocalessudoaptupdatesudoa......
  • 【笔记-Blender】插件开发
    【笔记-Blender】插件开发前置工作打开设置“界面-开发选项”:这样可以通过对功能按钮的右键菜单直接复制或查看其源码,以及快速跳转到API手册。打开设置“界面-Python工具提示”:这样可以通过界面的悬停菜单直接查看该条目在代码中的表示方式。通过命令提示符打开Blender:这......
  • 【笔记-MySql】表处理语句
    【笔记-MySql】表处理语句查看表SHOWTABLES;查看列SHOWCOLUMNSFROM<tableName>;查看约束SHOWINDEXESFROM<tableName>;创建表CREATE[TEMPORARY]TABLE<tableName>(字段描述语句[,...][表级约束]);修改表名RENAMETABLE<oldtableName>TO<tabl......
  • 【笔记-MySql】库处理语句
    【笔记-MySql】库处理语句连接数据库mysql-u<user>-p<password>查看SHOWDATABASES;创建CREATEDATABASE[IFNOTEXISTS]<name>;删除DROPDATABASE<name>;选择USE<name>;......
  • 【笔记-MySql】数据处理语句
    【笔记-MySql】数据处理语句语句参数聚合函数{count|max|min|sum|avg|...}比较运算符{=|<>|!=|<|<=|>|>=}--<>:早期符号,等同于!=,据说移植和性能略优。条件描述{--将当前值作为条件<columnName>{比较运算符<value>|--......
  • 【笔记-Manim】空间与变换
    【笔记-Manim】空间与变换所有常量都可以在constants.py中找到屏幕空间屏幕中心为原点(0,0,0),遵循右手坐标系,向右为x轴正方向,向上为y轴正方向,向前为z轴负方向,旋转时正方向为顺时针方向。相关常量名称描述FRAME_HEIGHT屏幕高度,默认为8FRAME_WIDTH屏幕宽度,默认为......
  • InternLM大模型笔记3
    整个过程相比于上次来说比较顺利,除了前期pip安装缺少有关库导致报错报错,其他都没有什么问题配置NLTK过程遇到加载很慢,最后发现可能是算力太少导致服务器响应太慢导致,经过重装之后,解决了问题最后配置成功......
  • 【软件开发学习笔记】Git版本控制
    【软件开发学习笔记】Git版本控制Git概念存储方式Git是分布式存储,每一个clone下来的仓库都可以看成独立的个体,只是Git有提供同步功能,因此Git支持离线使用,因为本质上本地和云端是两个仓库。仓库构成提交(commit)提交是存储文件的最基本元素,记录了每次对文件的修改信息,同时也是......