GitHub Copilot is a paired AI programming where you, the human, still have to do most of the work • The Register

GitHub unveiled a code completion tool called Copilot on Tuesday that shows promise but still has some way to go to meet its goal of programming AI pairs.

If you’re wondering how well it works, in a service FAQ, which is available as a limited “tech preview”, GitHub admitted:


Developer Nick Shearer Point that one of the examples of Copilot’s output on its own home page was the auto-complete of an algorithm that processes expenses. He suggests using a floating point variable for a monetary value. Generally speaking, floating point variables are not currency suitable, unless you want values ​​such as $ 9.99000001 to pass through your system.

No, bad robot … This AI-generated code does not float our boat

Copilot can find other ways to ruin your day. Let GitHub explain:

The most enthusiastic person we could find with Copilot said the tool worked exactly as expected one in ten times. “When he’s guessing right, I feel like I’m reading my mind,” they said.

GitHub calls this AI pair programming. But, right now, as it is, Copilot is more like AI chair programming, or backseat programming, than pair programming. It is not a team of equals. You, the human, are always ultimately and solely responsible, and that makes Copilot more autocomplete than a robot programmer.

A GitHub spokesperson told us that the Copilot team compared their tool making it full functions in Python. The model generated a correct code 43% of the time on the first try, the PR representative said, and 57% of the time when allowed 10 attempts. We are sure it is improving. The spokesperson added that developers should use Copilot with the usual set of tests and security tools and apply their best judgment.

Copilot is easy to use – it’s available in Visual Studio Code as an extension or GitHub code spaces, once you’ve been accepted into the preview. Type in and Copilot will suggest the next line of code, or fill in the blanks for a particular function you’re trying to write.

You can also write comments to cause the software to generate blocks of code. A GitHub spokesperson told us that Copilot understands both programming and human languages, which allows developers to describe a task in English, and the tool will then try to deliver the corresponding code.

At the heart of it is OpenAI Codex, which a GitHub spokesperson told us was a machine learning system created by OpenAI, and an API for using Codex. by program will be available this summer with more details. We were also told that Codex performs significantly better than OpenAI’s text generation GPT-3.

Teaching neural networks to write code has been tried time and time again; there are a few startups like TabNine and Kite that have products similar to Copilot, as well as big tech companies like Amazon.

GitHub Copilot should come as no surprise as the code management platform is owned by Microsoft, which has a close relationship with OpenAI and a multi-billion dollar investment.

Garbage in, garbage out

Copilot has been trained on massive amounts of natural language text as well as public code repositories. GitHub has stated that the output of the tool is up to the user, just like you own the output of a compiler from your source code, although it estimates that 0.1% of suggestions may contain code that was in the training set, which you may or may not be permitted to use. Again, you will need to carefully check the output of Copilot.

In one example, GitHub Copilot produced multiple lines of TypeScript that parse JSON data into a data structure that maps names to collaborators, all based on a comment containing a sample JSON input.


Comments are written in gray. The code highlighted in blue was generated by GitHub Copilot. Image Credit: GitHub

We are told that Copilot can handle all kinds of programming languages ​​although it works best with Python, JavaScript, TypeScript, Ruby and Go. It has learned to produce code by learning common patterns in the use of programming languages. , just as GPT-3 learned the grammar of the written word. That said, Copilot isn’t flawless. It is likely that your code base is made up of thousands of lines of code or more.

We could see it being used to automate simple, repetitive tasks – such as boilerplate code generation – and suggest library or framework functions you don’t know about so you don’t have to go through the documentation.

The tool notifies GitHub, via telemetry, whenever its suggestions are accepted or rejected; this information will be used to improve the software, we are told. It’s even claimed that Copilot can adapt to any changes you make to the source and learns to match your coding style.

“We use telemetry data, including information about suggestions that users accept or reject, to improve the model,” the Microsoft-owned company said. “We do not reference your private code when generating code for other users.”

A spokesperson for GitHub told us that Copilot uses high performance GPUs to make its inference. They added that hundreds of engineers, including many of their own, were already using GitHub Copilot every day; Alpha testers have also been launched, let’s note.

You can join the waiting list to try Copilot here. It’s a free offering for now, but it will hit the market if it manages to launch, a spokesperson told us. ®

Source link

About Michael Hodges

Check Also

Worldwide Smart Buildings AI & Machine Learning in Smart

Dublin, August 11, 2021 (GLOBE NEWSWIRE) – The report “Smart Buildings AI & Machine Learning …