你需要了解这种新的编程AI:StarCoder

人工智能1年前发布 cnnuidx
23 00

译者 | 布加迪

审校 | 重楼

BigCode最近发布了一个新的人工智能LLM大型语言模型):StarCoder,旨在帮助开发人员更快速地编写高效的代码。本文介绍了StarCoder的定义、StarCoder工作原理以及您可以如何利用StarCoder提升编程能力。

你需要了解这种新的编程AI:StarCoder

StarCoder的定义

StarCoder一种专为编程语言设计的LLM,旨在帮助程序员在短的时间内编写高质量代码。

它用Python编写,经过训练,支持80多种编程语言编写代码,包括面向对象的编程语言(比如C++PythonJava以及过程编程语言(比如FortranC

StarCoder的工作原理

StarCoder LLM采用多查询注意技术,该技术使StarCoder能够理解代码的内容并生成准确的建议。该技术需要同时分析多个查询以提供准确的响应。

StarCoder LLM训练过程涉及收集和整理来自GitHub代码存储库的多种编程语言的大量数据。通过利用这多样化的数据集,StarCoder可以生成准确而高效的代码建议。

如何使用StarCoder LLM?

开始使用StarCoder LLM很容易。您可以利用StarCoder的任何工具来编写高效的代码,包括其Playground聊天机器人。下面介绍如何利用StarCoder编写更好的程序。

1. 代码完成

通过使用StarCoder Playground接口,StarCoder可以抓取程序数据并完成程序,或基于迄今为止已编写的代码的上下文发现程序中缺失的部分。要使用StarCoder Playground,请将不完整的代码写入代码提示

比如说:

你需要了解这种新的编程AI:StarCoder

当您点击显示代码完成功能的Generate按钮时,StarCoder建议使用JavaScript数组方法来完成提示的代码。

2. 从自然语言提示生成代码

StarCoder不是一个能够理解自然语言提示的指令模型,比如像“创建一个查找1100之间数的函数”这样的提示。然而,可以使用StarCoder的聊天机器人技术助手)来输入指令,并利用StarCoder作为指令模型,如下图所示

你需要了解这种新的编程AI:StarCoder

该图描述了StarCoder的技术助被要求编写一个对1100之间的素数求Python函数。

与之相仿,您可以利用这个聊天机器人来发现代码结构中的错误或漏洞,StarCoder通过用来自GitHub代码存储库的数千个类似程序运行特定代码来实现这一功能。这可以节省代码调试方面的时间和精力。

除了上述功能特性外,StarCoder LLM还提供了更多功能。这包括Visual Studio Code插件,该插件提供代码完成功能,有助于在您开发软件时提高生产力。

StarCoder LLM的当前局限性

尽管StarCoder LLM是一令人印象深刻的人工智能工具,但它存在一些局限性。要的限制之一是它依赖训练数据。训练数据的质量和数量制约了StarCoder LLM的性能。

此外,当使用LLM生成或完成代码时,您也许碰到StarCoder的反馈可能更准确的情况。此外,StarCoder发现很难处理通过Playground和聊天机器人等任何渠道提供给它的大量数据。但愿BigCode能够改进这些限制。

LLM没那么复杂

StarCoder只是LLM的另一个例子,表明了人工智能的变革能力。LLM继续改变工程和科学领域某些流程的执行方式。

LLM不像看起来那么复杂。它们利用深度学习来分析数据,并解读语法、句法和上下文以创建响应。了解LLM的定义以及您如何能利用LLM帮助您发掘其潜力。

原文标题:Introducing StarCoder: The New Programming AI,作者:Chinedu Mgbemena

© 版权声明

相关文章