1.openai开源了什么
2.Python调用OpenAI
3.Elasticsearch:使用 OpenAI、源码LangChain 和 Streamlit 的源码基于 LLM 的 PDF 摘要器和 Q/A 应用程序
4.OpenAI/Triton MLIR 第零章: 源码编译
5.揭秘OpenAI新神器:Cursor源码深度解析与应用探索
6.我做了个chatPPT(含源码和prompt)
openai开源了什么
OpenAI开源了多个重要的项目和工具。
首先,源码OpenAI开源了其核心的源码深度学习模型,如GPT系列。源码GPT(Generative Pre-trained Transformer)是源码探秘小程序源码一种基于Transformer架构的预训练语言模型,能够生成高质量的源码自然语言文本。OpenAI通过开源GPT系列模型,源码使得开发者能够轻松地在自己的源码应用中使用这些强大的语言模型,从而推动了自然语言处理领域的源码发展。例如,源码开发者可以利用GPT模型来构建智能聊天机器人,源码提供更为自然和智能的源码对话体验。
其次,源码OpenAI还开源了其用于模型训练和推理的源码工具和库。这些工具和库为开发者提供了丰富的功能和灵活性,使他们能够高效地训练自己的深度学习模型,并将其应用于各种实际场景中。例如,OpenAI提供了易于使用的API,开发者可以通过这些API轻松调用OpenAI的模型进行推理,从而加快了应用开发的进程。
最后,OpenAI还致力于开源文化和社区的建设。他们不仅公开了模型的源代码和训练数据,还积极与社区分享技术进展、研究方法和最佳实践。这种开源精神极大地促进了人工智能领域的知识共享和技术创新。通过开源,OpenAI为全球的研究者、开发者和创新者搭建了一个共同进步的平台,推动了人工智能技术的快速发展和广泛应用。
总的来说,OpenAI通过开源其核心模型、工具库以及积极参与开源社区建设,极大地推动了人工智能领域的发展和进步。这些开源项目不仅为开发者提供了强大的技术支持,还为全球范围内的研究和创新活动注入了强大的动力。随着OpenAI在开源方面的不断努力,我们有理由相信,未来的.net framework 4.0 源码人工智能技术将更加先进、开放和普惠。
Python调用OpenAI
安装Python环境,略。
下载并安装VSCode编辑器,略。
配置OpenAI环境变量,将替换为自己的密钥。OPENAI_BASE_URL设置为国内代理服务器地址。
在Mac OS中,关闭科学上网状态后,安装项目依赖的包。
创建源代码文件,包括.env文件和index.py文件。确保两个文件已保存。运行代码,成功运行后的结果通常类似以下示例图。
使用官方提供的OpenAI密钥,自行在OpenAI官方注册获取。
Elasticsearch:使用 OpenAI、LangChain 和 Streamlit 的基于 LLM 的 PDF 摘要器和 Q/A 应用程序
您是否曾感到信息过载?在众多书籍和文档面前,时间显得如此宝贵。OpenAI、LangChain 和 Streamlit 可助你创建一个能总结 PDF 并回答问题的自定义聊天机器人。
本文将展示如何构建端到端应用程序。项目涉及以下内容:
Open AI:专注于开发人工智能技术的组织,研究自然语言处理、强化学习、机器人技术等领域。
创建 OpenAI 密钥:在 openai.com/ 网站上登录并生成唯一 API 密钥,用于访问 OpenAI API。
LangChain:一个用于构建上下文感知推理应用程序的框架,提供工具、库和预构建组件。
Streamlit:一个开源 Python 库,用于构建 Web 应用程序,简化创建交互式 Web 应用程序的过程。
前提条件:安装 Elasticsearch 及 Kibana,使用 pip 安装 Python 依赖包,创建环境变量文件。
创建应用:在项目根目录下创建 app.py 文件,涨跌提醒指标源码导入依赖项,创建 SideBar 和上传 PDF 文件功能。
提前文本并写入到 Elasticsearch:提取 PDF 文件内容,分割文本,生成嵌入,构建知识库。
连接 LLM OpenAI:初始化并利用 OpenAI 语言模型创建问答系统,对输入文档和用户问题执行模型,显示生成的响应。
完整的 app.py 代码和项目源码可在 GitHub - liu-xiao-guo/PDF-Summarizer-End-to-End-Project 下载。
OpenAI/Triton MLIR 第零章: 源码编译
本文旨在深入探讨开源AI项目OpenAI Triton MLIR,着重介绍Triton作为编程语言与编译器在GPU加速计算领域的应用与优化。Triton为用户提供了一种全新的方式,通过将其后端接入LLVM IR,利用NVPTX生成GPU代码,进而提升计算效率。相较于传统CUDA编程,Triton无需依赖NVIDIA的nvcc编译器,直接生成可运行的机器代码,体现出其在深度学习与数据科学领域的高性能计算潜力。Triton不仅支持NVIDIA GPU,还计划扩展至AMD与Intel GPU,其设计基于MLIR框架,通过Dialect支持多样化后端。本文将从源码编译角度出发,逐步解析Triton的设计理念与优化策略,为研究编译技术和系统优化的工程师提供宝贵资源。
首先,需要访问Triton的官方网站,克隆其官方代码库,以便后续操作。构建过程涉及两个重要依赖:LLVM与pybind。LLVM作为Triton的核心后端,通过将高级Python代码逐步转换至LLVM IR,最终生成GPU可运行代码,体现了其在计算优化领域的优势。pybind组件则用于封装C++/CUDA或汇编代码,实现Python DSL与高性能组件的无缝集成。
接下来,将LLVM与pybind分别编译安装,redis源码阅读要求通过手动配置指定路径,确保编译过程顺利进行。LLVM的安装对于基于Triton进行二次开发的工程师和研究人员至关重要,因为它为Triton提供了强大的计算基础。在特定的commit ID下编译Triton,确保与后续版本兼容。
在编译过程中,配置pybind同样至关重要,它允许用户通过Python API调用高性能组件,实现自动化生成高性能算子。完成编译后,生成的.so文件(libtriton.so)为后续Triton的Python接口提供了支持。
将libtriton.so移动至triton/python/triton/_C目录下,确保Python路径正确配置,实现无缝导入与调用。通过简单的import triton命令,即可开启Triton的开发之旅。验证Triton性能,可以选择tutorials目录下的示例代码,如-matrix-multiplication.py,通过运行该脚本,观察Triton在GPU上的性能表现。
Triton在NVGPU上的成熟映射路线,从抽象的Python DSL到贴近GPU层面的IR,最终生成高效机器代码,体现了其在高性能计算领域的优越性。Triton未来的发展蓝图将支持更多前端语言,对接不同硬件厂商的硬件,实现高效映射,满足多样化计算需求。
揭秘OpenAI新神器:Cursor源码深度解析与应用探索
Cursor,一款专为编程与人工智能打造的编辑器,目前仍处于早期阶段,具备多项功能。由两家MIT高材生创立的公司于年在旧金山成立,获得OpenAI的投资。虽然Cursor的代码质量参差不齐,甚至可能部分由AI生成,其官网与代码仓库简陋,无详细文档。92众筹源码根据其官方声明,Cursor在智能性上比Copilot更出色。然而,实际功能还需通过官方提供的视频评估,视频展示了Cursor支持两种交互方式:通过cmd+k激活代码生成模式与cmd+l激活的聊天模式。生成代码的逻辑在源码文件的features/chat/chatThunks.ts中,通过向Cursor服务器发送POST请求,将信息通过token的方式流式返回,提供类似ChatGPT的体验。聊天模式下,Cursor能根据问题和文件上下文向AI提问。Cursor在理解工程上下文方面有显著进步,能够识别并提供项目中相关实现的文件路径。当前Cursor的核心优势在于免费特性及理解项目工程的能力,但其劣势在于对VSCode生态的挑战。
在Cursor的内部实现中,通过解析输入的指令,结合编辑器与AI进行交互,实现代码生成、内容编辑与工程上下文理解等功能。对于生成代码和AI续写内容的请求,Cursor通过向服务器发送包含选中文本、指令类型等信息的POST请求实现。聊天模式下,Cursor通过简单的请求实现向AI提问。编辑器与AI之间的双向通信通过文本事件流技术实现,确保流畅的交互体验。然而,Cursor的核心后台实现尚未开源,这构成了其商业策略的一部分。
Cursor未来面临的挑战包括维持竞争优势、优化用户体验、解决与VSCode生态的兼容性问题,并进一步完善其核心功能。随着技术的不断进步与迭代,Cursor有望在编程辅助领域发挥更大的作用。尽管当前存在一些限制和不足,如代码质量、文档建设和后台实现的非开源性,但Cursor在编程辅助工具领域展现出了创新潜力,值得持续关注。
我做了个chatPPT(含源码和prompt)
实现了一个基于AI的chatPPT工具,此工具能够根据输入的话题或句子自动生成PPT,包括润色标题、选择主题颜色以及生成所有插图。工具原理涉及openAI的GPT 3.5 TURBO接口、Dalle2以及Python-pptx库。
GPT 3.5 TURBO接口用于生成PPT结构文本,包括PPT标题、页面标题和内容等,同时根据文本内容选择适合的情感主题色彩。Dalle2则将生成的文本转化为相应的,Python-pptx库则负责构建PPTX文件。
实现这个工具的关键在于制定合适的提示语,让AI理解用户需求并生成符合预期的PPT。实现过程相对简单,但需要考虑科学上网、openAI接口费用(生成一个PPT费用约在0.1~0.2美元,主要成本来自接口)以及输出篇幅的限制。
使用时需要注意以下几点:
1、确保网络环境稳定,以便顺利使用工具。
2、openAI接口使用需付费,费用主要依据生成数量,一般生成一个PPT的费用在0.1~0.2美元左右。
3、由于AI接口限制输出最多个token,输出篇幅可能会受限。为解决这一问题,建议将用户输入内容分为多个部分,每次生成四个左右的主题,将这些主题的回复拼合,最终生成完整的PPT。虽然这样会增加成本,但可以有效解决输出限制问题。
工具源码已提供,有兴趣的读者可自行下载和优化,以满足更多个性化需求。
AUTOGEN | 上手与源码分析
AUTOGEN是一个开源平台,主要功能是创建和管理自动化对话代理(agent)。这些代理能执行多种任务,包括回答问题、执行函数,甚至与其它代理进行交互。本文将介绍AUTOGEN中的关键组件,即Conversation Agent,并简单分析其多代理功能的源码实现。
根据官网文档和参考代码,AUTOGEN利用OpenAI提供的服务来访问语言模型(Logic Unit)。任何部署了OpenAI兼容API的语言模型都可以无缝集成到AUTOGEN中。利用OpenAI的Tool功能,AUTOGEN能够调用函数,而不是使用自定义提示来引导逻辑模型选择工具。在请求体中提供候选函数信息,OpenAI API将从中选择最有可能满足用户需求的函数。每个agent都可使用send和receive方法与其他agent进行通信。
在Autogen中,每个agent由Abilities & Prior Knowledge、Action & Stimuli、Goals/Preference、Past Experience等部分组成。语言模型(逻辑单元)通过调用OpenAI服务来实现,利用OpenAI提供的Tool功能调用函数。每个agent都维护自己的历史记录,以List[Message]的形式保存,包含对话信息和执行函数的结果等。
Conversable Agent是Autogen的基本智能体类型,其他如AssistantAgent或UserProxyAgent都是基于此实现。在初始化时,通过配置列表来初始化OpenAI对象。generate_reply是核心功能,根据接收到的消息和配置,通过注册的处理函数和回复生成函数产生回复。此过程包括消息预处理、历史消息整理和回复生成。通过定制化钩子处理特定逻辑,考虑到调用工具、对话、参考历史经验等功能,generate_reply的大致运行流程如下:首先处理最后接收的消息,然后整理所有消息进行回复生成。
Autogen将多种不同功能的agent整合到Conversable Agent中。generate_reply时,会根据消息判断是否需要终止对话或人工介入。回复逻辑包括关联或不关联函数的情况。通过代码执行器,代理安全执行GPT生成的代码,AutoGPT自带了Docker、Jupyter和本地三种代码执行器。多Agent对话通过initiate_chat函数启动,使用send和receive函数确保信息正确传递。这种设计允许灵活组合多个ConversableAgent,实现自定义的Agent系统。
Autogen还提供GroupChat功能,允许多个Agent进行自由讨论或固定流程的工作流。开源社区的autogen.agentchat.contrib部分提供了许多自动化对话系统的贡献。此外,官方notebook中讨论了Agent优化器,允许自定义输出,将对话信息输出到前端UI界面。
总之,Autogen作为Agent搭建工具,提供了基础功能,允许创建和管理自动化对话代理。其设计将执行工具与逻辑模型整合,简化了多代理对话和多功能任务的实现。通过源码分析,可以看到其灵活的架构和丰富的功能实现,为开发者提供了构建复杂对话系统的基础。
AI Code Translator 编程语言自动转换工具源码分析
近期,关注到开源库 PuerTS 提及“Lua到TS的AI转写”。基于此,我探究了一款基于GPT的代码翻译工具——“AI Code Translator”。此工具能将一种编程语言自动转换为另一种语言。PuerTS提及的“AI转写”可能采用了相似原理。本文将深入分析“AI Code Translator”中“转写”部分的实现。
项目地址:未提供
项目截图:未提供
尝试使用在线工具 aicodeconvert.com/ 将一段TS代码转为Lua。实际体验中,AI转换的Lua代码保留了TS代码的含义、结构和写法,但需要开发者补充一些在目标语言中不存在的类型或函数,例如Lua的class。此外,名称保持与源代码一致,但如果源代码中使用特定库或框架,转换后的代码同样使用该库,但目标语言可能并未提供相应版本,需要开发者自行实现或先用AI转写源库。
分析工具的前端使用next.js编写,核心功能在Index.ts文件中,包含createPrompt和OpenAIStream两个关键方法。createPrompt负责构造AI翻译所需的提示词,OpenAIStream则封装了与OpenAI API的交互。createPrompt方法根据输入语言、输出语言以及代码内容构建提示词,旨在让AI理解翻译任务并生成目标代码。
创建提示词的方法分为三个主要分支,分别针对自然语言输入、自然语言输出以及具体编程语言的输入和输出情况。在构建提示词时,采用身份说明、任务描述、举例、具体文本填充和输出格式续写等步骤,旨在引导AI完成代码翻译。
对于大工程的转写,建议采用以下改进策略:分析代码依赖关系,优先转写底层代码;分段处理代码,避免超过AI处理的token长度限制;对AI生成的代码进行人工检查和测试,提升代码质量。这些技巧可帮助开发者更高效地利用AI转写工具。
总结,AI转写工具“AI Code Translator”通过简单的提示词构造实现代码自动转换。虽然适用于小型代码段,但对于大工程的转写还需结合人工辅助,以提高效率和代码质量。此外,若目标是学习和开发网络游戏,特别是手机游戏或游戏行业相关工作,推荐阅读《Unity3D网络游戏实战(第2版)》,本书由作者总结多年经验编写,提供实用的教程和知识,非常适合这一领域的需求。
OpenAI 开源的免费 AI 语音转文字工具 - Whisper,一步一步本地部署运行
OpenAI 推出的开源免费工具 Whisper,以其出色的语音识别功能吸引了不少关注。这款模型不仅能够进行多语言的语音转文本,还能进行语音翻译和语言识别,实用价值极高。市面上许多语音转文字服务如讯飞语记等都收费,而Whisper作为开源选择,无疑是一个经济实惠且性能强大的解决方案。
想在本地体验Whisper,首先需要为Windows设备安装ffmpeg和rust。ffmpeg可以从ffmpeg.org下载并配置环境变量,而rust则可以从rust-lang.org获取并确保命令行可用。接着,创建一个python虚拟环境,安装Whisper所需的依赖库。
运行Whisper的过程相当直接。通过命令行,只需提供音频文件如"Haul.mp3",并指定使用"medium"模型(模型大小从tiny到large递增)。首次运行时,Whisper会自动下载并加载模型,然后开始识别并输出文本,同时将结果保存到文件中。如果想在Python代码中集成,也相当简单。
如果你对此技术感兴趣,不妨亲自尝试一下。项目的源代码可以在github.com/openai/whisper找到。这不仅是一次AI技术的体验,还可能开启语音转文字的新篇章。更多详情可参考gpt.com/article/的信息。
标签推荐:#AI技术 #OpenAI开源 #Whisper模型 #语音转文字 #ChatGPT应用