当前位置:首页 > 数码 > 了解其性能-和-长处和未来后劲-助手-深化剖析-AI-GPT (性能解释)

了解其性能-和-长处和未来后劲-助手-深化剖析-AI-GPT (性能解释)

admin2个月前 (04-19)数码9

作者:donx

GPTs全景解析GPTs是什么

GPTs是target=_blankclass=infotextkey>OpenAI在2023年11月颁布的新版本,具有可定制性和成功特定义务的弱小性能。它提供了一种新的方式来经常使用,可以让用户依据自己的需求定制化,并与其余用户共享。

以下是OpenAI对它的才干引见。

GPTs提供了一种更智能、更共性化的体验,无需每次都启动教育,经常使用户能够更快地取得答案。它可以经过组合指令、额外常识和恣意技艺,来顺应各种场景。用户可以经过OpenAI的平台创立自己的GPT,并与其余用户共享。

但是GPTs提供的方式是让一切人都可以失掉定制版的ChatGPT,用户可以依据自己的生存,上班,学习等不同的场景,制订适宜自己的ChatGPT,并且可以和其他人启动共享。

任何人都可以经过OpenAI的平台搭建自己的GPTs,用户不须要懂得编程或许技术,只需领有自己的idea,就可以创立属于自己的GPTs。

创立GPT的环节繁难且直观。用户可以经过对话方式,为GPT提供指令和额外的常识库,而后选用所需的才干,例如联网、绘图、剖析数据等。这可以在OpenAI的搭建平台上启动尝试。

例如,OpenAI提供了如下一些GPTs,例如

OpenAI提供了GPTs商店(临时还没有第三方的GPTs)繁难用户启动GPTs的分享和经常使用。GPTs的引入繁难了用户可以更大限制地经常使用OpenAIChatGPT的才干。

构建一个完整的GPTs运行

登陆OpenAI网站,选用Explore,而后再MyGPTs当选用createaGPTs.

有两种方式可以启动GPTs的创立:

只须要将须要的性能启动设置,就能失掉一个想到的GPTs的才干。

例如上方设置的一个游戏GPTs,咱们经过性能,使得GPT可以启动数据剖析,并且可以经常使用

下图是这个数据剖析助手的一个demo状况,用户可以在两三分钟内极速成功一个AI助手。

GPTs的疑问与破绽

AssistantsAPI全景解析

AssistantsAPI准许用户在自己的运行中经过API成功相似GPTs的AI助理,目前支持的才干和GPTs一样(截止2023年11月12日),准许接入三种不同类型的tools:

经过构建AI助手,用户可以经过指令(instructions)设置助手的角色和才干。而后,AI助手将应用其弱小的大言语模型才干、各种工具(tools)和常识库来回答用户的疑问。

AssistantsAPI通常案例

用户可以经过Assistantplayground启动AssistantsAPI的探求,参考以下教程经常使用API启动AIAssistant集成。

通常启动AssistantsAPI集成须要一下四个步骤:

上方的例子会一步一步启动AIAssistant的构建。

步骤1:创立一个AI助手

一个AIassistant可以经过上方的几个参数启动性能:

在这个例子中,咱们会创立一个自己的数学导师,经常使用到CodeInterpreter才干:

#Upgradeto/target=_blankclass=infotextkey>PythonSDKv1.2withpipinstall--upgradeopenaiassistant=client.beta.assistants.create(,#助手的名字,#助手才干tools=[{"type":"code_interpreter"}],#助手的工具#模型选用)步骤2:创立一个对话Thread

一个Thread就代表了一个对话。OpenAI倡导每个用户在开局对话的时刻都创立一个Thread,把一切用户关系的内容和文件都经过在Thread创立Message成功。

可以将Thread了解为与AI助手创立的一个对话窗口,一切的对话行为都在这个Thread中启动。

thread=client.beta.threads.create

Threads自身并无大小限制,因此你可以在单个Thread对话中发送恣意数量的信息(Messages)。API会智能对恳求的信息启动适当的处置,以确保恳求满足模型的最大窗口长度限制,如经过截断等方式启动调整。

步骤3:在对话(Thread)中传入信息(Message)

一个信息可以蕴含用户的文本输入,还有或许蕴含用户上行的文件。虽然目前还不支持图片,但OpenAI将在不久的未来减少这一性能。

message=client.beta.threads.messages.create(thread_id=thread.id,#须要传入的ThreadID,)

假设如今你展如今对话Thread中的一切信息,你会看到这条信息被参与到了对话中:

{"object":"list","data":[{"created_at":1696995451,"id":"msg_4rb1Skx3XgQZEe4PHVRFQhr0","object":"thread.message","thread_id":"thread_34p0sfdas0823smfv","role":"user","content":[{"type":"text","text":{"value":"Ineedtosolvetheequation`3x+11=14`.Canyouhelpme?","annotations":[]}}],...步骤4:口头AI助手

为了失掉AI助手的结果,你须要创立一个Run对象,这使得AI助手可以失掉对话的信息,并选择是经常使用工具(tools)回答用户的疑问,还是仅仅依赖模型自身的才干启动疑问解答。

当AI失掉答案,会在对话(Thread)的信息列表中参与角色(*role="assistant"*)的一个回复。

run=client.beta.threads.runs.create(thread_id=thread.id,assistant_id=assistant.id,)步骤5:展现AI助手的回复

当咱们须要失掉AI回复的时刻,可以对Run对象启动不时的查问,失掉以后口头的形态。

run=client.beta.threads.runs.retrieve(thread_id=thread.id,run_id=run.id)

当形态码==completed时,代表AI曾经成功回复,并且可以在Thread中看到AI的回答。

messages=client.beta.threads.messages.list(thread_id=thread.id)

最后咱们就可以把内容展现给用户,上方是一个例子。AI给出了两个回答(role==assistant)

可以经过运转步骤RunSteps,失掉口头的两边形态,从而提供应用户两边结果以及经常使用的tools等信息。

步骤*:Playground当天调试和测试

开发者可以在Playground中启动调试和测试,详细如下,其详细的才干和GPTs比拟相似,只是可以看到更多的debug信息。也是可视化的详细界面。

AssistantsAPI上班机制剖析

AssistantAPI的指标是协助开发者更高效地开收回性能弱小的AI助手,这些助手可以有效地利用OpenAI提供的多项才干以及用户自身构建的工具。

AIAssistant的关键对象概念

从咱们上述的解说内容中,咱们可以很分明,AI助手API的调用关键由Assistant、Thread、Message、Run和RunStep这五个对象组成

对象(OBJECT)含意助手对象(Assistant)调用OpenAI模型的义务型AI,该AI具有访问tools的才干对话(Thread)用户和AI之间的对话。Thread对话存储信息,并且智能处置文本长度超出限制的疑问信息(Message)信息由用户或许AI发生,可以蕴含文本,图片(临时不支持),或许文件。信息在一个Thread对话中以有序列表方式存储口头(Run)经过AI助手对某个对话启动显式口头。AI助手依据自身的性能信息和Thread中的信息内容,调用不同的工具(tools),从而得出回复。口头失掉的结果会被存储在Thread的信息中,作为AI的回复口头步骤(RunStep)口头(Run)的两边环节详细记载。包括AI经常使用了哪些tool,或许发生了哪些信息。这个对象可以协助开发者了解AI如何得出最终的结果

创立一个AIAssistant对象

创立一个AI助手对象十分繁难,只须要指定经常使用的言语model,而后经过instruction指令规则AI助手的性情以及才干(或许是指标)。

文件上行:

file=client.files.create(file=open("speech.py","rb"),)

AI助手创立:

assistant=client.beta.assistants.create(,深化讨论GPTs和AIAssistant"/>

失掉进展Pollingforupdates

为了可以及时失掉口头的进展,可以设置定时失掉retrievetheRun口头形态。你可以失掉每次Run的口头形态,从而选择下一步该做什么。目前还不支持streaming的输入(2023-11-12日)

对话锁Threadlocks 当口头对象Run处于启动中in_progress的形态的时刻,对话Thread对象会被锁上,这象征着:

口头步骤Runsteps

当口头进入in_progress后,会有上方四种或许的形态,区分是

口头步骤Runsteps或许耗时比拟长,为了能了解口头的细节,咱们可以经过step_details这个字段启动观察,蕴含了两种类型的内容:

限制 性能解释

目前是beta版本,将会继续处置后续这些如下疑问

ToolsCodeInterpreter

CodeInterpreter(代码解释器)准许AssistantAPI去创立并且口头代码。这个代码解释器才干,支持多种文件处置,以及代码口头。

代码解释器能够经过代码运转,成功多种艰巨的义务,并且能处置很多GPT地单薄才干,例如数学才干等。CodeInterpreter支持假设发现自己的代码口头失败了,会经过多轮重试,直到口头成功。

开启CodeInterpreter

假设须要开启CodeInterpreter才干,只须要在tools参数中参与CodeInterpreter,如tools=[{"type":"code_interpreter"}]即可。

importopenaiasclientassistant=client.beta.assistants.create(,,tools=[{"type":"code_interpreter"}])

模型之后会选用能否经常使用CodeInterpreter去运转用户的恳求。

在CodeInterpreter中传入文件

CodeInterpreter可以解析多种不同类型的文件,所以当你须要处置少量的数据时,AIAssistant准许你传入自己的文件启动剖析。

留意:上行的文件须要设置purpose='assistants'

#Uploadafilewithan"assistants"purposeimportopenaiasclientfile=client.files.create(file=open("speech.py","rb"),)#CreateanassistantusingthefileIDassistant=client.beta.assistants.create(,,tools=[{"type":"code_interpreter"}],file_ids=[file.id])

假设须要指定对话级别的文件访问(即改文件只在这个对话中可以被访问),则可以经常使用如下的代码:

thread=client.beta.threads.create(messages=[{"role":"user","content":"Ineedtosolvetheequation`3x+11=14`.Canyouhelpme?","file_ids":[file.id]}])

文件最大可以支持512MB,z支持的格局蕴含.csv,.pdf,.json和其余格局

常识库失掉KnowledgeRetrieval

常识库失掉是克制ChatGPT常识储藏时效性疑问,以及数据私有化的有效手腕,例如应用常识库失掉才干,可以把业务数据常识库集成到GPT中。

开发者可以将文件(常识库)上行到AI助手中,OpenAI会智能化对文档启动分块,加索引(index)以及embedding存储和成功向量化检索。

所以不须要用户自己启动这一系列操作就可以成功常识库检索的才干。

开启常识库检索

Assistant假设须要开启常识库增强,只须要在初始化中的tools参与tools=[{"type":"retrieval"}]参数。

assistant=client.beta.assistants.create(,,tools=[{"type":"retrieval"}])上班原理

模型会智能地依据你的输入启动内容的选用,关键的召回逻辑如下:

FunctionCalling

跟ChatGPT的CompletionAPI一样,AssistantAPI也支持functioncalling。FunctionCalling准许你将函数的形容通知AI助手,蕴含了函数的定义以及参数等,而后AI助手会智能调用。

但是AssistantAPI 不会间接调用函数 ,而是将函数的参数和函数前往,期待你提交函数调用结果,才会启动下一步的口头。

定义函数

首先须要依照如下的样例递交函数定义

{"type":"function",#类型必定是function"function":{"name":"getCurrentWeather",#函数名"deion":"Gettheweatherinlocation",#函数的形容"parameters":{#函数的参数"type":"object","properties":{"location":{"type":"string","deion":"Thecityandstatee.g.SanFrancisco,CA"},"unit":{"type":"string","enum":["c","f"]}},"required":["location"]}}}

而后将函数的参入AssistantAPI的tools参数中。例如上方的例子,定义了一个天气机器人,可以失掉天气信息。蕴含了两个函数:

assistant=client.beta.assistants.create(,,tools=[{"type":"function","function":{"name":"getCurrentWeather","deion":"Gettheweatherinlocation","parameters":{"type":"object","properties":{"location":{"type":"string","deion":"Thecityandstatee.g.SanFrancisco,CA"},"unit":{"type":"string","enum":["c","f"]}},"required":["location"]}}},{"type":"function","function":{"name":"getNickname","deion":"Getthenicknameofacity","parameters":{"type":"object","properties":{"location":{"type":"string","deion":"Thecityandstatee.g.SanFrancisco,CA"},},"required":["location"]}}}])失掉调用的函数

当初始化一个口头(Run)的时刻,假设调用了一个function,则会进入到pending的形态。须要你启动提交函数的结果。

模型支持并发调用,参考parallelfunctioncalling

如下的前往结果,可以看到required_action是须要提交的函数调用的函数名和参数。这外面可以失掉callid,用于提交经常使用函数结果经常使用。

{"id":"run_3HV7rrQsagiqZmYynKwEdcxS","object":"thread.run","assistant_id":"asst_rEEOF3OGMan2ChvEALwTQakP","thread_id":"thread_dXgWKGf8Cb7md8p0wKiMDGKc","status":"requires_action","required_action":{"type":"submit_tool_outputs","submit_tool_outputs":{"tool_calls":[{"id":"call_Vt5AqcWr8QsRTNGv4cDIpsmA",#前往的callid,用于提交经常使用"type":"function","function":{"name":"getCurrentWeather","arguments":"{"location":"SanFrancisco"}"}},{"id":"call_45y0df8230430n34f8saa","type":"function","function":{"name":"getNickname","arguments":"{"location":"LosAngeles"}"}}]}},...提交函数结果

须要关于每个函数都启动提交函数输入,关于每个输入的结果须要提交给哪个函数,则是对应了函数调用前往的required_action中的tool_call_id。

详细的代码如下。

run=client.beta.threads.runs.submit_tool_outputs(thread_id=thread.id,#对话idrun_id=run.id,#口头idtool_outputs=[{"tool_call_id":call_ids[0],#callid"output":"22C",},{"tool_call_id":call_ids[1],"output":"LA",},])LangChain集成AssistantAPI

截止2023-11-15日,LangChain集成API还只是一个试验版本langchain-experimental,未有正式版本。所以须要经常使用的读者,可以经常使用如下版本:

!pipinstall-U-q"langchain==0.0.331rc2"langchain-experimental"openai>=1.1"importosos.environ["OPENAI_API_KEY"]='YOUROPENAIKEY'#!pipinstall-U-q"langchain==0.0.331rc2"langchain-experimental"openai>=1.1"fromlangchain_experimental.openai_assistantimportOpenAIAssistantRunnableimportopenaiasclientfile=client.files.create(file=open("TEST.csv","rb"),)interpreter_assistant=OpenAIAssistantRunnable.create_assistant(,深化讨论GPTs和AIAssistant"/>

其余更多的内容可以参考:langchaincookbook

经常使用curl调用AssistantAPI

详细可以参考如下的JupyterNotebook

Capabilities和Actions

咱们在创立GPTs的时刻,可以给GPTs提供多种不同的才干

GPTs与AssistantAPI的比拟与差异

虽然GPTs和AssistantAPI都是为了创立自定义的AI助手创立的,到那时两者的方法和经常使用的场景不同。reference

GPTs有着繁难易用的前端交互,可以很极速地便捷小白用户极速搭建AI助手,可以极速地验证打算和成果,并且可以很极速的在GPTs的商店中启动分享。

但是,AssistantAPI须要经过API的方式启动操作,虽然可以经常使用AssistantAPI的Assistantplayground启动性能经常使用,但是其关键的目的还是为开发者提供一个API方式,繁难开发者可以在在自己的运行中,极速集成这些才干。

参考资料


人工智能未来的发展前景怎么样?

人工智能的发展前景还是挺不错的,目前学习人工智能领域发展的人才逐步增长,适应了科技发展的潮流。 人工智能的发展一共经历了六个发展期,随着大数据、互联网、云计算等科技的飞速发展,人工智能的发展也迎来了新高潮。 人工智能技术和产业发展可以推动智慧城市的建设和发展,人工智能化正在逐步推动资源的优化配置和各企业的工作效率。 人工智能从最开始的专用智能向通用智能发展,之后向人机混合智能发展,最后向自主智能系统发展推动人类进入普惠型智能社会,语音识别实现人机交互的关键技术,现在的机器人也越来越人工化。 人工智能有利也有弊,发展人工智能也要充分考虑到人工智能技术的局限性,理性健康的发展目标才能推动社会的有利可持续发展。 一般机器人是指不具有智能,只具有一般编程能力和操作功能的机器人,中国通信巨头华为发布了自己的人工智能芯片并将其应用于其智能手机产品,三星最新发布的语音助手Bixby已经从软件层升级为语音助手,长时间陷入了“你问我回答”模式,人工智能通过智能手机变得更贴近人们的生活。 在应用水平上:随着第五代移动通讯技术的发展,设备之间的联通将有着更高的带宽与更低的延迟,也就催生了更多人工智能的应用,如自动驾驶、VR等等。 为这些技术落地和应用扫清了障碍。 而互联网公司也将是最大的AI投入者。 根据艾瑞数据分析,2019年中国科技企业技术研发投入约为4005亿元,其中人工智能算法研发投入占比为9.3%,超370亿元,且大部分投入来自互联网科技公司。 主要Al算法应用领域计算机视觉、语音识别/语音合成,以及自然语言处理占比分别为22.5%、2.3%和7.1%,三者中计算机视觉相关算法研发投入占比最大,这与视觉相关创业公司数量、产业需求和政策导向呈正相关联系,计算机视觉目前仍是中国最具代表性的Al应用技术。

GPT技术是什么?

GPT是一种基于深度学习的自然语言处理技术,已成为当今最先进的自然语言处理技术之一 。 基于大规模预训练的自然语言处理模型,可以进行高效而精准的自然语言理解和生成。 在健康医疗领域中。 GPT可以作为一个智能医疗助手,为患者提供个性化的医疗服务,如医学咨询、病症诊断、健康建议等。 与传统的医生问诊相比,GPT可以随时随地提供服务,而且能够处理大量患者提问,解决医生客观时间不足的难题。 同时,GPT还可以通过诊断病症、预测疾病、管理健康等方面进行分析和建议。 这种智能医疗助手可以在一定程度上扩展医疗资源,为患者提供更全面的医学知识和服务,提供更加精准、高效的医疗服务,进一步推动健康医疗领域的数字化升级。 GPT是由多个算法、算力和数据组成的大型语言模型。 具体来说,它使用了深度学习算法,并利用了强大的GPU加速器进行训练和推理。 此外,GPT还需要大量的文本数据来训练和优化模型。 高质量的文本数据可以为模型提供丰富的上下文信息和语言结构,从而提高模型的性能。 同时,模型也可以通过学习这些数据来改进自然语言处理任务的性能。 景联文科技是AI基础数据行业的头部企业,拥有大量高质量的医疗数据储备,拥有相关医疗知识文本100G,涵盖了各个医学领域的最新研究成果。 拥有大量专业医学论文,来自于国内外多方搜索平台、40多家专业高校合作资源以及40多家国内外专业医学组织协会合作。 拥有100G的医学图像,包括了各种医学影像,如CT、MRI、超声等,这些影像数据不仅具有很高的分辨率和准确性,也能让AI更好地学习和诊断。 这些数据能够让AI更好地了解和模拟医患沟通、诊疗流程等情景,提高AI诊断的准确性和效率。 所有数据都经专业医学人员标注质检,可保证数据的高质量。 对于GPT来说,数据标注也是非常重要的,高质量的标注数据可以对聊天机器人进行训练,从而使机器人能够更加准确地理解和回答用户的问题。 数据标注能够使GPT变得更加准确,使机器人可以更好地理解用户的输入,从而更好地回答用户的问题;能够帮助GPT理解自然语言,从而使聊天机器人的回答更加自然,贴近人类的口语表达。 通过更加准确和自然的回答,机器人能够提高客户满意度,尤其是在解决某些问题需要具有高度专业化的语言能力的领域;可以帮助机器人更快地进行学习,从而降低人工干预的需求,并且减少机器人学习所需的时间和资源,从而降低整个系统的成本。 景联文科技拥有丰富的医学专家资源,可从不同来源、不同结构的数据中进行知识提取,形成知识存入到知识图谱中。 医疗领域专家可对垂直领域数据信息进行标注,从而保证数据质量,满足当前标注需求。 景联文科技拥有5000名标注经验丰富的专业医学生团队,与10所专业医学院校达成深度合作,拥有丰富的图像和文本标注经验,可为大模型医疗提供图像和NLP相关数据采集和数据标注服务,并根据客户需求迅速调配有相关经验的标注员。 针对医疗数据定制标注服务,景联文智能医疗标注平台支持多种类医疗数据标注,可为模型提供丰富、准确、结构化的医疗知识。 景联文科技提供的产品为全链条AI数据服务,从数据采集、清洗、标注、到驻场的全流程、垂直领域数据解决方案一站式AI数据服务,满足了不同应用场景下的各类数据采集标注业务的需要,协助人工智能企业解决整个人工智能链条中数据采集标注环节的相对应问题,推动人工智能在更多地场景下实现落地应用,构建完整的AI数据生态。 景联文科技|数据采集|数据标注助力人工智能技术,赋能传统产业智能化转型升级

免责声明:本文转载或采集自网络,版权归原作者所有。本网站刊发此文旨在传递更多信息,并不代表本网赞同其观点和对其真实性负责。如涉及版权、内容等问题,请联系本网,我们将在第一时间删除。同时,本网站不对所刊发内容的准确性、真实性、完整性、及时性、原创性等进行保证,请读者仅作参考,并请自行核实相关内容。对于因使用或依赖本文内容所产生的任何直接或间接损失,本网站不承担任何责任。

标签: GPTs