Als je geïnteresseerd bent in een programmeer-AI, moet je StarCoder gaan gebruiken.
BigCode heeft onlangs een nieuwe, kunstmatig intelligente LLM (Large Language Model) uitgebracht met de naam StarCoder, met als doel ontwikkelaars te helpen sneller efficiënte code te schrijven. Hier leert u over StarCoder, hoe StarCoder werkt en hoe u StarCoder kunt gebruiken om uw codeervaardigheid te verbeteren.
Wat is StarCoder?
StarCoder is een LLM die uitsluitend is ontworpen voor programmeertalen met als doel programmeurs te helpen bij het schrijven van hoogwaardige en efficiënte code binnen kortere tijdsbestekken.
Het is geschreven in Python en getraind om meer dan 80 programmeertalen te schrijven, waaronder object georiënteerd programmeren talen zoals C++, Python en Java en procedurele programmering talen als Fortran en C.
Hoe werkt StarCoder?
De StarCoder LLM maakt gebruik van een Multi-Query Attention Technique waarmee StarCoder de inhoud van de code kan begrijpen en nauwkeurige suggesties kan genereren. Deze techniek omvat het gelijktijdig analyseren van meerdere vragen om relevante antwoorden te geven.
Het trainingsproces van StarCoder LLM omvatte het verzamelen en compileren van enorme hoeveelheden gegevens uit meerdere programmeertalen afkomstig uit GitHub-repository's. Door gebruik te maken van deze diverse dataset kan StarCoder nauwkeurige en efficiënte codesuggesties genereren.
Hoe de StarCoder LLM te gebruiken
Aan de slag gaan met de StarCoder LLM is eenvoudig. U kunt alle tools van StarCoder gebruiken, inclusief Playground of Chatbot, om efficiënte code te schrijven. Hier leest u hoe u StarCoder kunt gebruiken om betere programma's te schrijven.
1. Code-voltooiing
StarCoder, door het gebruik van de StarCoder-speeltuininterface, kan je programma's doorspitten en voltooien of ontbrekende delen van je programma ontdekken op basis van de context van de tot nu toe geschreven code. Om de StarCoder Playground te gebruiken, schrijft u uw onvolledige code in de codeprompt.
Bijvoorbeeld:
StarCoder suggereert een JavaScript-array-methode om de gevraagde code te voltooien wanneer u op de Genereer knop met de functie voor het aanvullen van de code.
2. Codegeneratie op basis van natuurlijke taalprompts
StarCoder is geen instructiemodel dat aanwijzingen in natuurlijke taal kan begrijpen, zoals "Maak een functie die priemgetallen vindt tussen 1 en 100". U kunt echter gebruiken StarCoder's Chatbot (Tech-assistent) om instructies in te voeren en StarCoder als instructiemodel te gebruiken, zoals weergegeven in de onderstaande afbeelding:
Deze afbeelding toont de technische assistent van StarCoder die wordt gevraagd om een Python-functie dat vindt de som van priemgetallen tussen één en honderd.
Op dezelfde manier kunt u deze chatbot gebruiken om bugs in de structuur van uw code te detecteren, wat StarCoder doet door de specifieke code door duizenden vergelijkbare programma's uit GitHub-repository's te laten lopen. Dit kan u tijd en moeite besparen bij het debuggen van uw codes.
Naast de hierboven genoemde functies biedt de StarCoder LLM meer mogelijkheden. Dit omvat een Visual Studio Code Extension die zorgt voor codeaanvulling, waardoor uw productiviteit tijdens het ontwikkelen van software wordt verhoogd.
Huidige beperkingen van de StarCoder LLM
Hoewel de StarCoder LLM indrukwekkend is AI (kunstmatige intelligentie) hulpmiddel, het heeft enkele beperkingen. Een van de belangrijkste beperkingen is de afhankelijkheid van trainingsgegevens. De kwaliteit en kwantiteit van de trainingsgegevens beperken de prestaties van de StarCoder LLM.
Wanneer u de LLM gebruikt voor het genereren of voltooien van code, kunt u gevallen tegenkomen waarin de feedback van StarCoder nauwkeuriger zou kunnen zijn. Bovendien vindt StarCoder het moeilijk om grote hoeveelheden gegevens te verwerken die via een van zijn kanalen, zoals Playground en chatbot, worden ingevoerd. Hopelijk zal BigCode deze beperkingen verbeteren.
LLM's zijn niet zo ingewikkeld
StarCoder is slechts een ander voorbeeld van een LLM die het transformerende vermogen van AI bewijst. LLM's blijven de manier veranderen waarop bepaalde processen op het gebied van techniek en wetenschap worden uitgevoerd.
LLM's zijn niet zo ingewikkeld als ze lijken. Ze gebruiken deep learning om gegevens te analyseren en inzicht te krijgen in grammatica, syntaxis en context om antwoorden te creëren. Als u begrijpt wat LLM's zijn en hoe u LLM's kunt gebruiken, kunt u hun potentieel benutten.