AWS CodeWhisperer

aws.amazon.com/codewhisperer
AWS CodeWhisperer to inteligentny asystent programowania od Amazon Web Services, ogólnodostępny od kwietnia 2023 roku. Narzędzie wykorzystuje duże modele językowe (LLM), aby generować sugestie kodu w czasie rzeczywistym w środowisku IDE, zwiększając produktywność i ułatwiając pracę z ekosystemem AWS.
Kluczowe funkcje
- Sugestie kontekstowe – podpowiedzi linii, funkcji i bloków kodu na podstawie komentarzy, struktury i repozytorium.
- Wsparcie wielu języków – Python, Java, JavaScript, TypeScript, C#, Go, Rust, PHP, Ruby, Kotlin, C/C++, Shell, SQL, Scala i inne.
- Analiza bezpieczeństwa – skanowanie kodu pod kątem luk (m.in. OWASP) wraz z sugestiami naprawczymi.
- Reference tracking – identyfikacja fragmentów podobnych do kodu open-source, wraz z repozytorium i licencją.
- Integracja z IDE – Visual Studio Code, JetBrains (PyCharm, IntelliJ), AWS Cloud9 i konsola AWS Lambda.
Modele cenowe
- Individual (bezpłatny) – dostępny z AWS Builder ID; oferuje sugestie kodu, referencje open-source i do 50 skanów bezpieczeństwa miesięcznie.
- Professional (~19 USD/os./mies.) – dodatkowo integracja z IAM i SSO, zarządzanie organizacyjne, wyższe limity skanowania (np. 500 miesięcznie).
Zalety i zastosowania
- Wzrost produktywności – w testach beta programiści byli o 27 % skuteczniejsi i pisali kod o 57 % szybciej.
- Optymalizacja dla AWS – dedykowane podpowiedzi kodu dla Lambda, S3, DynamoDB, EC2 i innych usług chmurowych.
- Nauka i onboarding – generowanie przykładów IaC (CloudFormation, Terraform), ułatwiające wdrożenie do pracy z AWS.
Wyzwania i ograniczenia
Jakość kodu może być nierówna – w testach HumanEval poprawność wyniosła ~31 % (dla porównania Copilot ~46 %, ChatGPT ~65 %). Mimo wbudowanej analizy bezpieczeństwa około 29 % fragmentów w Pythonie i JS zawierało podatności, wymagając weryfikacji manualnej.
Perspektywy rozwoju
AWS rozwija CodeWhisperer w kierunku pełnoprawnego asystenta programistycznego, integrując go z narzędziem Amazon Q Developer, które dodaje czatowy interfejs AI do refaktoryzacji, wyjaśniania i diagnostyki kodu.