Chat_Gpt API调用上传图片示例

一、API调用现状

跟据https://platform.openai.com/docs/api-reference/chat/create所述,我们可以通过API调用其多模态大模型,而目前国内支持多模态API调用的几乎没有。所以本文后续提供一个通过API调用GPT-4o模型,进行多模态(图片)交互的示例。

二、获取图片的URL

由于openai的官方文档中对图片参数的需求是统一资源定位符(URL),我们需要先将自己本地的图片通过一定方式转换成URL,这里我使用的是sm.ms图床,它提供5GB的免费空间,且它还支持API调用,我们可以通过API调用批量提交图片获取其对应的URL,具体操作流程参考【python】调用sm.ms图床api接口,实现上传图片并返回url_smms图床网页接口-CSDN博客

三 、调用CHAT_Gpt API

首先拿到自己的API_KEY,将自己的API_KEY替换掉YOUR_API_KEY,点击运行就能与GPT-4o进行多模态的交互啦

import requests

def chat_with_gpt(prompt,img_url):
    api_key = "YOUR_API_KEY"
    model = "gpt-4o"
    url = "https://api.openai.com/v1/chat/completions"
    headers = {
        "Authorization": f"Bearer {api_key}",
        "Content-Type": "application/json"
    }
    data = {
        "model": model,
        "messages": [
            {
                "role": "user",
                "content": [
                    {
                        "type": "image_url",
                        "image_url": {
                            "url":img_url
                        }
                    }
                ]
            },
            {
                "role": "system",
                "content": [
                    {
                        "type": "text",
                        "text": prompt
                    }
                ]
            } 
        ]
    }
    
    response = requests.post(url, headers=headers, json=data)
    
    if response.status_code == 200:
        response_data = response.json()
        return response_data['choices'][0]['message']['content']

    else:
        return f"Error: {response.status_code}, {response.text}"

if __name__=="__main":
    img_url="https://dashscope.oss-cn-beijing.aliyuncs.com/images/dog_and_girl.jpeg"
    prompt="图片里面有什么"
    response = chat_with_gpt(prompt,img_url) 
    print(response)

    #response=这张图片展示了一位坐在沙滩上的女性和她的狗狗。她们正在互动,狗狗举起一只前爪,她伸出手与狗狗互动。背景是一个波光粼粼的大海,天空是明亮的日落时分,整个场景显得温馨而美好。

050a294c37cd48789d7cd1c225916980.jpeg

 

  • 10
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
GPT, 通常指的是“Generative Pre-trained Transformer”(生成式预训练转换器),是一个在自然语言处理(NLP)领域非常流行的深度学习模型架构。GPT模型由OpenAI公司开发,并在多个NLP任务上取得了显著的性能提升。 GPT模型的核心是一个多层Transformer解码器结构,它通过在海量的文本数据上进行预训练来学习语言的规律。这种预训练方式使得GPT模型能够捕捉到丰富的上下文信息,并生成流畅、自然的文本。 GPT模型的训练过程可以分为两个阶段: 预训练阶段:在这个阶段,模型会接触到大量的文本数据,并通过无监督学习的方式学习语言的结构和规律。具体来说,模型会尝试预测文本序列中的下一个词或短语,从而学习到语言的语法、语义和上下文信息。 微调阶段(也称为下游任务训练):在预训练完成后,模型会被应用到具体的NLP任务中,如文本分类、机器翻译、问答系统等。在这个阶段,模型会使用有标签的数据进行微调,以适应特定任务的需求。通过微调,模型能够学习到与任务相关的特定知识,并进一步提高在该任务上的性能。 GPT模型的优势在于其强大的生成能力和对上下文信息的捕捉能力。这使得GPT模型在自然语言生成、文本摘要、对话系统等领域具有广泛的应用前景。同时,GPT模型也面临一些挑战,如计算资源消耗大、训练时间长等问题。为了解决这些问题,研究人员不断提出新的优化方法和扩展模型架构,如GPT-2、GPT-3等,以进一步提高模型的性能和效率。
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值