update
This commit is contained in:
parent
0bbf3daf74
commit
f1f4d84f7c
62
img2text.py
62
img2text.py
|
@ -1,62 +0,0 @@
|
|||
# usr/bin/python3
|
||||
import requests
|
||||
import json
|
||||
|
||||
# 需填写appkey
|
||||
appkey = "app-XXX"
|
||||
|
||||
# 上传图片
|
||||
def upload_img(imgpath="test.jpg"):
|
||||
|
||||
headers = {
|
||||
'Authorization': f'Bearer {appkey}',
|
||||
}
|
||||
|
||||
files = {
|
||||
'file': (imgpath, open(imgpath, 'rb'), 'image/jpg'), # 使用实际文件路径和类型替换
|
||||
}
|
||||
|
||||
response = requests.post(url = 'http://sl.vrgon.com:6062/v1/files/upload', headers=headers, files=files, data={'user': 'robot'})
|
||||
|
||||
img_id = json.loads(response.content)["id"]
|
||||
|
||||
return img_id
|
||||
|
||||
# 计算
|
||||
def img2text(path="./img/test.jpg"):
|
||||
img_id = upload_img(path)
|
||||
payload = {
|
||||
"inputs": {},
|
||||
"query": "请问这道数学题的答案是多少,请直接给出数字答案",
|
||||
"response_mode": "blocking",
|
||||
"conversation_id": "",
|
||||
"user": "robot",
|
||||
"files": [
|
||||
{
|
||||
"type": "image",
|
||||
"transfer_method": "local_file",
|
||||
"upload_file_id": img_id
|
||||
}
|
||||
]
|
||||
}
|
||||
|
||||
headers = {
|
||||
'Authorization': f'Bearer {appkey}',
|
||||
'Content-Type': 'application/json',
|
||||
}
|
||||
|
||||
response = requests.post(url = "http://sl.vrgon.com:6062/v1/chat-messages", headers=headers, data=json.dumps(payload))
|
||||
|
||||
ans = ""
|
||||
if response.status_code == 200:
|
||||
for line in response.iter_lines():
|
||||
# print(line.decode('unicode_escape'))
|
||||
temp = json.loads(line)
|
||||
ans += temp["answer"]
|
||||
|
||||
return ans
|
||||
|
||||
|
||||
|
||||
if __name__=="__main__":
|
||||
print(img2text(path="./img/2.jpg"))
|
57
img2text2.py
57
img2text2.py
|
@ -1,57 +0,0 @@
|
|||
# usr/bin/python2.7
|
||||
import requests
|
||||
import json
|
||||
|
||||
# 需填写appkey
|
||||
appkey = "app-XXX"
|
||||
|
||||
# 上传图片
|
||||
def upload_img(imgpath="test.jpg"):
|
||||
headers = {
|
||||
'Authorization': 'Bearer {0}'.format(appkey),
|
||||
}
|
||||
|
||||
with open(imgpath, 'rb') as f:
|
||||
files = {'file': (imgpath, f, 'image/jpg')}
|
||||
|
||||
response = requests.post(url = 'http://sl.vrgon.com:6062/v1/files/upload', headers=headers, files=files, data={'user': 'robot'})
|
||||
|
||||
img_id = json.loads(response.content)["id"]
|
||||
|
||||
return img_id
|
||||
|
||||
# 计算
|
||||
def img2text(path="./img/test.jpg"):
|
||||
img_id = upload_img(path)
|
||||
payload = {
|
||||
"inputs": {},
|
||||
"query": "请问这道数学题的答案是多少,请直接给出数字答案",
|
||||
"response_mode": "blocking",
|
||||
"conversation_id": "",
|
||||
"user": "robot",
|
||||
"files": [
|
||||
{
|
||||
"type": "image",
|
||||
"transfer_method": "local_file",
|
||||
"upload_file_id": img_id
|
||||
}
|
||||
]
|
||||
}
|
||||
|
||||
headers = {
|
||||
'Authorization': 'Bearer {0}'.format(appkey),
|
||||
'Content-Type': 'application/json',
|
||||
}
|
||||
|
||||
response = requests.post(url = "http://sl.vrgon.com:6062/v1/chat-messages", headers=headers, data=json.dumps(payload))
|
||||
|
||||
ans = ""
|
||||
if response.status_code == 200:
|
||||
for line in response.iter_lines():
|
||||
temp = json.loads(line)
|
||||
ans += temp["answer"]
|
||||
|
||||
return ans
|
||||
|
||||
if __name__=="__main__":
|
||||
print img2text(path="./img/2.jpg")
|
|
@ -0,0 +1,11 @@
|
|||
#usr/bin/python2.7
|
||||
|
||||
from src.img2text2 import Chatbot
|
||||
|
||||
if __name__ == "__main__":
|
||||
base_url = ""
|
||||
# Appkey is required
|
||||
appkey = "app-"
|
||||
|
||||
cb = Chatbot(appkey, base_url)
|
||||
print cb.img2text(path="./img/2.jpg")
|
12
readme.md
12
readme.md
|
@ -4,6 +4,18 @@
|
|||
|
||||
## img2text2.py 为python2 版本
|
||||
|
||||
1.下载包
|
||||
git clone http://sl.vrgon.com:3000/wangzixiang/img2textforrobot.git
|
||||
|
||||
2.安装依赖包
|
||||
pip install requests
|
||||
|
||||
3.测试运行
|
||||
python main.py
|
||||
|
||||
4.使用
|
||||
将src 放入同级目录下,然后根据main.py 方式调用即可
|
||||
|
||||
# sample
|
||||
![](docs/0bec4563f67e5c03c7bf8c75a1618dd.png)
|
||||
|
||||
|
|
Binary file not shown.
Binary file not shown.
|
@ -0,0 +1,73 @@
|
|||
# usr/bin/python3
|
||||
import requests
|
||||
import json
|
||||
|
||||
class Chatbot:
|
||||
def __init__(self, appkey, base_url):
|
||||
self.appkey = appkey
|
||||
self.base_url = base_url
|
||||
|
||||
# 上传图片
|
||||
def upload_img(self, imgpath="test.jpg"):
|
||||
|
||||
headers = {
|
||||
'Authorization': f'Bearer {self.appkey}',
|
||||
}
|
||||
|
||||
files = {
|
||||
'file': (imgpath, open(imgpath, 'rb'), 'image/jpg'), # 使用实际文件路径和类型替换
|
||||
}
|
||||
try:
|
||||
response = requests.post(url = f'{self.base_url}/files/upload', headers=headers, files=files, data={'user': 'robot'})
|
||||
|
||||
except Exception as e:
|
||||
print("error", e)
|
||||
|
||||
img_id = json.loads(response.content)["id"]
|
||||
|
||||
return img_id
|
||||
|
||||
# 计算
|
||||
def img2text(self, path="./img/test.jpg"):
|
||||
img_id = self.upload_img(path)
|
||||
payload = {
|
||||
"inputs": {},
|
||||
"query": "请问这道数学题的答案是多少,请直接给出数字答案",
|
||||
"response_mode": "blocking",
|
||||
"conversation_id": "",
|
||||
"user": "robot",
|
||||
"files": [
|
||||
{
|
||||
"type": "image",
|
||||
"transfer_method": "local_file",
|
||||
"upload_file_id": img_id
|
||||
}
|
||||
]
|
||||
}
|
||||
|
||||
headers = {
|
||||
'Authorization': f'Bearer {self.appkey}',
|
||||
'Content-Type': 'application/json',
|
||||
}
|
||||
|
||||
response = requests.post(url = f"{self.base_url}/chat-messages", headers=headers, data=json.dumps(payload))
|
||||
|
||||
ans = ""
|
||||
if response.status_code == 200:
|
||||
for line in response.iter_lines():
|
||||
# print(line.decode('unicode_escape'))
|
||||
temp = json.loads(line)
|
||||
ans += temp["answer"]
|
||||
|
||||
return ans
|
||||
|
||||
|
||||
|
||||
if __name__=="__main__":
|
||||
|
||||
base_url = "http://sl.vrgon.com:6062/v1"
|
||||
# 需填写appkey
|
||||
appkey = "app-SKvWcmjJJk5PoTumsegFNd1N"
|
||||
|
||||
cb = Chatbot(appkey, base_url)
|
||||
print(cb.img2text(path="./img/2.jpg"))
|
|
@ -0,0 +1,61 @@
|
|||
#usr/bin/python2.7
|
||||
|
||||
import requests
|
||||
import json
|
||||
|
||||
class Chatbot:
|
||||
def init(self, appkey, base_url):
|
||||
self.appkey = appkey
|
||||
self.base_url = base_url
|
||||
|
||||
# Upload pictures
|
||||
def upload_img(self, imgpath="test.jpg"):
|
||||
headers = {
|
||||
'Authorization': 'Bearer {}'.format(self.appkey),
|
||||
}
|
||||
|
||||
files = {
|
||||
'file': (imgpath, open(imgpath, 'rb'), 'image/jpg'), # Replace with the actual file path and type
|
||||
}
|
||||
try:
|
||||
response = requests.post(url=self.base_url + '/files/upload', headers=headers, files=files, data={'user': 'robot'})
|
||||
except Exception as e:
|
||||
print("error", e)
|
||||
|
||||
img_id = json.loads(response.content)["id"]
|
||||
|
||||
return img_id
|
||||
|
||||
# 计算
|
||||
def img2text(self, path="./img/test.jpg"):
|
||||
img_id = self.upload_img(path)
|
||||
payload = {
|
||||
"inputs": {},
|
||||
"query": "What is the answer to this math problem? Please give the numerical answer directly.",
|
||||
"response_mode": "blocking",
|
||||
"conversation_id": "",
|
||||
"user": "robot",
|
||||
"files": [
|
||||
{
|
||||
"type": "image",
|
||||
"transfer_method": "local_file",
|
||||
"upload_file_id": img_id
|
||||
}
|
||||
]
|
||||
}
|
||||
|
||||
headers = {
|
||||
'Authorization': 'Bearer {}'.format(self.appkey),
|
||||
'Content-Type': 'application/json',
|
||||
}
|
||||
|
||||
response = requests.post(url=self.base_url + '/chat-messages', headers=headers, data=json.dumps(payload))
|
||||
|
||||
ans = ""
|
||||
if response.status_code == 200:
|
||||
for line in response.iter_lines():
|
||||
if line: # Make sure the row is not empty
|
||||
temp = json.loads(line)
|
||||
ans += temp["answer"]
|
||||
|
||||
return ans
|
Loading…
Reference in New Issue