How Microsoft builds a platform for AI development

Microsoft CEO Satya Nadella described the arrival of major AI versions of languages ​​such as GPT-4 as “the age of Moses,” similar to the arrival of the first web browser. Unlike in the early days of Mosaic, when Microsoft was late to the browser wars and forced to buy its first Internet hardware, the company has excelled in AI, releasing AI technology in business and consumer products.

The key to understanding Microsoft is to see itself as a platform company. That internal culture drives it to provide tools and technologies for developers and a foundation upon which builders can build. For AI, this starts with Azure OpenAI APIs and access to tools like Fast Engine and Semantic Kernelwhich enables the development of social experiences on top of OpenAI’s Transformer-based neural network.

As a result, much of this year’s BUILD development event focuses on how you can use this tool to create your own AI-powered applications, based on the “copilot” model of AI-assisted tools that Microsoft has been passing along its edges. the browser and Bing search engine, to GitHub and its software development tools, and to Microsoft 365 and Power Platform businesses. We’re also learning where Microsoft plans to fill gaps in its platform and make its tools a one-stop shop for AI development.

LLMs are vector processing tools

At the heart of a large language like OpenAI’s GPT-4 is a large neural network that works with the vector representation of the language, looking for vectors similar to the descriptors that motivate them and creating and refining the best path through a large number of descriptors. leads to clear results. It is similar to the method used by search engines, but where the search is about finding vectors similar to those that answer your questions, LLMs expand the initial tokens that make up your first movement (and the speed used to insert the article). applied LLM). This is one reason why Microsoft’s first LLM products, GitHub Copilot and Bing Copilot, create search functions, since they already use databases and indexes, which store LLM solutions.

Unfortunately for all of us, vector databases are rare, and they are built on very different terms than the more common SQL and NoSQL databases. They are best thought of as extensions of many types of graphs, transformed and combined as vectors with direction and magnitude. Vectors make finding similar data faster and more accurate, but they are required a very different way of working than other types of data.

If we want to create our business drivers we must have our own databases, because they allow us to expand and refine our LLMs with our real data. Perhaps that data is a library of general contracts or years of valuable documentation, or all of your customer service questions and answers. If we can store that information in the right way, it can be used to create an AI-powered interface for your business.

But do we have the time or resources to take this data and store it in a strange format, on an unproven object? What we need is a way to quickly feed data to AI, and build on the tools we’re already using.

Vector Search comes to Cosmos DB

Microsoft announced several changes to its Cosmos DB cloud-native document database at BUILD 2023. Although most of the changes focus on working with large amounts of data and improving queries, perhaps the most useful for AI software development is the addition of vectors. power analysis. This also applies to Cosmos DB instances, which allows customers to avoid moving data to a new vector database.

Cosmos DB’s new vector search builds on the newly introduced vector search Cosmos DB for MongoDB vCore service, which allows you to view real-time events, and high availability in the available environment – and to use the automatic method at any cost, while still using the MongoDB APIs. Existing MongoDB databases can be migrated to Cosmos DB, allowing you to use MongoDB on-premises to manage your data and use Cosmos DB in Azure to run your applications. Cosmos DB’s new update tools should make it easier to create replicas across domains, replicating changes from one database across other domains.

Vector Search extends this tool, adding a new query method to your web pages that can be used by your AI applications. Although vector search is not a real vector store, it offers many of the same features, including a way to store the input and use it as a key to search your data, using the same rules as other more complex methods. The tools that Microsoft is introducing will support vector control (using IVF Flat), three types of distance metrics, and the ability to save and search on vectors up to 2,000 in size. Distance metrics are an important part of vector analysis, because they help to describe how similar vectors are.

What’s really interesting about Microsoft’s original solution is that it adds to a well-known database. Using a document database to create a semantic store for LLM makes sense: It’s a familiar tool that we already know how to use to provide and manage content. There are already libraries that allow us to capture and convert different types of documents and put them in JSON, so that we can move from existing storage devices to LLM-ready vector embeddings without changing workflows or developing skills with a new class of databases.

It’s a method that should simplify the task of gathering the information needed to create your own psychological search. Azure OpenAI provides APIs to generate content from your documents that can be stored in Cosmos DB along with your documents. Applications will create new entries based on what users can use to search the Cosmos DB vector to find matching entries.

There is no need for the articles to contain keywords in the first query; they only need to match the words. All you have to do is run the documents through the GPT shortcut and then create an installation, adding a data preparation step to your program. Once you have a setup set, you need to create a load process that automatically adds entries when new entries are saved to Cosmos DB.

This method should work well in conjunction with Azure AI Studio updates to provide private AI data to your Azure OpenAI applications. What this means for your code is that it will be easier to maintain programs, reducing the risk of them running out of time and producing false positives. Instead, software that is developing business solutions for, say, government contracts can use documents from your company’s history of successful sales, to create an outline that can be customized and customized.

Using vector search as semantic memory

Along with its cloud-based AI tools, Microsoft is bringing the Semantic Kernel extension to Visual Studio Code, allowing developers to create and test AI capabilities with plugins around Azure OpenAI and OpenAI APIs using C# or Python. Using it as a Cosmos DB search vector should make the Semantic Kernel memory less expensive, allowing you to build more complexity around API calls. An example of how to use the settings is available as an add-on to the Copilot Chat example, which should allow you to switch to vector search instead of the built-in text analysis function.

Microsoft’s AI platform is very versatile, a platform you can build on. Azure OpenAI forms the backbone, hosting the LLMs. Bringing vector searches to data in Cosmos DB will make it easier to implement results in our team’s knowledge and content. This should also affect other announcements of the AI ​​platform, around tools like Azure Cognitive Search, which automatically puts any source of information to Azure OpenAI models, and provides a simple end of your programs and tools to test the work without leaving Azure AI Studio.

What Microsoft is offering here is a set of AI tools that start with Azure AI Studio and its low-level Copilot Maker, through Cognitive Search results, for your vector searches for your content. It should be enough to help you design an LLM program that meets your needs.

Copyright © 2023 IDG Communications, Inc.

Source link

Leave a Reply

Your email address will not be published. Required fields are marked *