Duet AI, Google's collection of generative AI features for text summarization, organizing data and more, is expanding to new products and services in Google Cloud.
At its annual Cloud Next conference, Google announced that Duet AI -- still in preview with general availability set for sometime later this year -- can now assist with code refactoring, or improving code by making small changes without altering the code's overall external behavior.
In a developer's preferred software development environment, they can open a Duet AI-powered chat window and write a natural language prompt (e.g. "Convert this function to Go and use Cloud SQL") to have Duet AI execute on it (in this case, rewrite the function and convert the database connection to a managed relational database). And in the Google Cloud Console, Google Cloud's dashboard for building and deploying web apps, websites and services, operators can chat with Duet AI to get "how to" information about infrastructure configuration and suggestions on deployment, cost and performance optimization.
Duet AI in Cloud Workstations, Google's newly launched dev environment, can write code while highlighting best practices. Meanwhile, in Application Integration, the no-code tool to weave together software-as-a-service apps in Google Cloud, Duet can generate flows using existing APIs and assets, automatically creating documentation and test cases.
Select enterprises will be able to customize Duet AI with "organization-specific" knowledge from their libraries and codebases to generate context-aware code suggestions, Google says. That'll let Duet AI, for example, generate code for a function that finds all products under $10 in a company's product catalog.
Elsewhere, Duet AI can also now help design, create and publish APIs from natural language prompts via new connectors to Apigee, Google's API management platform. And it's more tightly integrated with BigQuery, Google's fully managed serverless data warehouse, and Looker, the business intelligence tool for data exploration and discovery in Google Cloud.
Google describes Duet AI in BigQuery as a "collaborative" experience integrated into the BigQuery interface to provide "contextual assistance" for writing SQL queries and Python. Duet AI in BigQuery can auto-suggest code in real time based on existing metadata and schema, generating full functions and code blocks while recommending possible fixes and explaining the code. Beyond this, Duet AI can generate vector embeddings -- mathematical representations of data -- to power semantic searches and recommendation queries.
Using Vertex AI, Google's platform for building, training and deploying machine learning models in the cloud, customers can customize the text-to-code model behind Duet AI to bring the model's suggestions in line with their coding standards and practices.
In Looker, Duet AI powers new "context-rich insights" and report creation tools, plus a chat feature called Duet AI chat assistance. Similar to AI-powered chatbots such as OpenAI's ChatGPT, chat assistance -- which is also available in Cloud Workstations, Spanner and Apigee -- allows users to ask questions about their business data and get answers back in natural language,
Via chat assistance and from other dashboards, Duet AI in Looker can automatically generate presentations; create summaries, calculations and visualizations based on saved reports; and start projects in LookML, Looker's modeling language for describing data relationships. Later this year, Google says that it'll add a Duet AI experience to analyze data in a collaborative notebook.
Duet AI is also coming to AlloyDB (Google's fully managed database service), Cloud SQL and Cloud Spanner, the distributed database management and storage service in Google Cloud. From Cloud Spanner, Duet AI will help to generate code to structure, modify and query data using natural language. A command like "Write a query to show all data in the messages table" will prompt Duet AI to automatically generate the required code, for instance.
And Duet AI will soon arrive in Google's Database Migration Service (DMS) to streamline the process of migrating data from a third party to Google Cloud. Later this year for Oracle customers, Duet AI in DMS will automate the conversion of certain database code, including stored procedures, functions, triggers, packages and custom query language code to AlloyDB and Cloud SQL.
Google promises a lot with Duet AI. But this reporter wonders about the underlying models' tendencies to make mistakes, particularly in the coding arena.
Much has been written about the risks around generative AI coding tools, including their limitations when it comes to interpreting context. A recent Stanford study found that software engineers who use code-generating AI systems are more likely to cause security vulnerabilities in the apps that they develop. And, as one early user of GitHub's generative AI, Copilot, pointed out, generative AI can be misled by ambiguous requirements, variable naming conflicts or even the misplacement of a single line of code.
Then, there's the issue of copyright.
Code-generating systems like some of the features of Duet AI are trained on publicly available code, and some of this code, inevitably, is under a restrictive license. Several legal experts have argued that generative AI tools could put companies at risk if they were to unwittingly incorporate copyrighted suggestions from the tools into their production software.
Google's mitigating step is having Duet AI cite the sources for its code suggestions. Attempting to allay enterprise customers' privacy and security fears, Google says that the code and inputs to Duet AI, as well as recommendations generated by Duet AI, won't be stored to train models powering Duet AI (like PaLM 2) or used to develop any products.