Ihr intelligenter Testassistent ist da! Ant TestAgent ist Open Source, kommen Sie und erleben Sie es!

Was ist TestAgent?

TestAgent  zielt darauf ab, einen „intelligenten Agenten“ im Testbereich aufzubauen, große Modelle und technische Technologie im Qualitätsbereich zu integrieren und die Aktualisierung hochwertiger Technologiegenerationen zu fördern. Wir freuen uns darauf, mit Community-Mitgliedern zusammenzuarbeiten, um innovative Lösungen im Testbereich zu entwickeln und einen 24-Stunden-Online-Testassistenten-Service aufzubauen, um das Testen so reibungslos wie möglich zu gestalten.

Wir freuen uns, Ihnen mitteilen zu können, dass wir zum ersten Mal in China über den Open-Source-TestAgent verfügen, ein großes Modell und Tool in der Testbranche. Diese Version enthält das leistungsstärkste 7B-Testfeld-Großmodell sowie das unterstützende lokale Modell-Rapid-Release- und Experience-Engineering-Framework. Willkommen zum Erleben und Aufpassen!

Projektadresse:

GitHub – codefuse-ai/Test-Agent

Lokaler Mac M1-Erlebniseffekt

Magischer Erlebniseffekt

Erlebnisadresse:TestGPT Test Assistant Demo

Merkmale dieser Ausgabe

  • Modell: In dieser Ausgabe veröffentlichen wir das Testdomänenmodell TestGPT-7B als Open Source. Das Modell basiert auf CodeLlama-7B und wurde auf verwandte Downstream-Aufgaben abgestimmt:
    • Mehrsprachige Testfallgenerierung (Java/Python/Javascript) war schon immer ein Bereich von großem Interesse für Wissenschaft und Industrie. In den letzten Jahren wurden neue Produkte oder Tools entwickelt wurden geschlüpft. , wie EvoSuite, Randoop, SmartUnit usw. Allerdings weist die herkömmliche Generierung von Anwendungsfällen Probleme auf, die schwer zu lösen sind. Die Generierung von Testfällen auf der Grundlage großer Modelle ist herkömmlichen Tools zur Generierung von Anwendungsfällen in Bezug auf die Lesbarkeit von Testfällen, die Vollständigkeit von Testszenarien und die Unterstützung mehrerer Sprachen überlegen. Dieses Mal konzentrieren wir uns auf die Unterstützung der mehrsprachigen Testfallgenerierung. Unsere Open-Source-Version umfasst zunächst Funktionen zur Testfallgenerierung für Java, Python und Javascript. In der nächsten Version werden nach und nach Sprachen wie Go und C++ geöffnet.
    • Testfall-Assert-Abschluss  Bei der Analyse und Untersuchung des aktuellen Status von Testfällen haben wir festgestellt, dass es einen bestimmten Anteil vorhandener Testfälle im Code-Warehouse gibt, die Assert nicht enthalten . Obwohl die Testfälle ohne Assert während des Regressionsprozesses ausgeführt und bestanden werden können, kann das Problem nicht gefunden werden. Daher haben wir das Szenario der automatischen Vervollständigung des Testfalls Assert erweitert. Durch diese Modellfähigkeit, kombiniert mit bestimmter technischer Unterstützung, ist es möglich, Stapel von Testfällen in der gesamten Bibliothek automatisch abzuschließen und die Qualität des Projekts intelligent zu verbessern.
  • Engineering-Framework:Lokales Modell-Rapid-Release- und Experience-Engineering-Framework.
    • ChatBot-Seite
    • Modell-Schnellstart
    • Private Bereitstellung, lokalisiertes GPT-Großmodell interagiert mit Ihren Daten und Ihrer Umgebung, kein Risiko von Datenlecks, 100 % sicher

Wir werden unsere Modelle und technischen Fähigkeiten auch in Zukunft weiterentwickeln:

  • Fügen Sie kontinuierlich weitere spannende Anwendungsszenarien für Testdomänen hinzu, z. B. Fragen und Antworten zum Domänenwissen, Testszenarioanalyse usw.
  • Unterstützen Sie die Offenheit des Copilot-Engineering-Frameworks für Testszenarien, wie z. B. die intelligente Einbettung von Testdomänenwissen, ein allgemeines Testtool-API-System, einen intelligenten Testagenten usw., also bleiben Sie dran!
  • Basierend auf 7B wird es schrittweise auf die Modelle 13B und 34B erweitert. Seien Sie herzlich willkommen, aufmerksam zu sein!

Das leistungsstärkste Großmodell im 7B-Testfeld

Derzeit verwenden wir in TestAgent standardmäßig das TestGPT-7B-Modell. Im Vergleich zu den aktuellen Open-Source-Modellen liegt das TestGPT-7B-Modell in Bezug auf die Erfolgsquote der Anwendungsfallausführung (bestanden@1) und die Abdeckung des Anwendungsfallszenarios (Durchschnitt) auf dem branchenführenden Niveau Anzahl der Testszenarien).

Die Bewertungsergebnisse der Kernfunktionen des TestGPT-7B-Modells lauten wie folgt:

  • Mehrsprachige Testfallgenerierung

Für die drei vom Modell unterstützten Sprachen Java, Python und Javascript lauten die Pass@1-Bewertungsergebnisse wie folgt:

Modell

Java

pass@1

Java

Durchschnittliche Anzahl an Testszenarien

Python

pass@1

Python

Durchschnittliche Anzahl an Testszenarien

Javascript

pass@1

Javascript

Durchschnittliche Anzahl an Testszenarien

TestGPT-7B

48,6 %

4.37

35,67 %

3,56

36 %

2,76

CodeLlama-13B-Instruct

40,54 %

1.08

30,57 %

1,65

31,7 %

3.13

Qwen-14B-Chat

10,81 %

2,78

15,9 %

1,32

9,15 %

4.22

Baichuan2-13B-Chat

13,5 %

2.24

12,7 %

2.12

6,1 %

3.31

  • Testfall: Abschluss bestätigen

Das aktuelle Modell unterstützt die Assert-Vervollständigung für Java-Anwendungsfälle. Die Ergebnisse der Pass@1-Bewertung lauten wie folgt:

Modell

pass@1

Starkes Verifizierungsverhältnis

Codefuse-TestGPT-7B

71,1 %

100%

Ingenieurarchitektur

Das Horn großer Modelle hat ertönt, und auch große Modelle im Testbereich entwickeln sich ständig weiter. Durch das reiche Weltwissen, das im Vortrainingsprozess gesammelt wurde, haben sie außergewöhnliche Denk- und Entscheidungsfähigkeiten in komplexen interaktiven Umgebungen bewiesen.

Obwohl das Basismodell im Testbereich bemerkenswerte Ergebnisse erzielt hat, gibt es immer noch einige Einschränkungen, und für die Lösung domänenspezifischer Testaufgaben sind in der Regel spezielle Tools oder Domänenkenntnisse erforderlich. Beispielsweise kann das Basismodell Aufgaben wie die Generierung einzelner Testcodes und Testtexte durch vorab trainiertes Wissen erledigen, ist jedoch professioneller, wenn es um die Generierung komplexer integrierter Anwendungsfälle, die Generierung domänenspezifischer Anwendungsfälle und die Interaktion mit der Testprozesspipeline geht Es werden Werkzeuge und Felder benötigt. Wissen.

Daher kann die Integration spezialisierter Tools in Basismodelle ihre jeweiligen Vorteile voll ausschöpfen. Spezialisierte Tools können das Problem unzureichender Modellaktualität lösen, das Fachwissen erweitern sowie die Interpretierbarkeit und Robustheit verbessern. Das Grundmodell verfügt über menschenähnliche Denk- und Planungsfähigkeiten, kann komplexe Daten und Szenarien verstehen und mit der realen Welt interagieren.

Basierend auf der Bereitstellung von Open Model Engineering und ChatBot in dieser Ausgabe werden wir weiterhin stark in den Bereich des Testens von Open Source investieren. Arbeiten Sie mit gleichgesinnten Entwicklern in der Community zusammen, um das fortschrittlichste Tools-Engineering-System, intelligente Testassistenten und Open-Source-Testprojekte im Testbereich zu erstellen!

Schnell einsetzbar

Vorbereitung

Modell-Download

Sie können es aufModelscope oder Huggingface Model bekommen Details und laden Sie Modelldateien herunter.

Umgebungsinstallation
git clone https://github.com/codefuse-ai/Test-Agent
cd Test-Agent
pip install -r requirements.txt

Bevor Sie mit der Ausführung des TestGPT-7B-Modells beginnen, stellen Sie bitte sicher, dass Ihre Ausführungsumgebung über etwa 14 GB Videospeicher verfügt.

Dienst starten

Das Projekt bietet die Möglichkeit, schnell eine Benutzeroberfläche auf der Webseite zu erstellen, um Modellinteraktionen und -effekte intuitiver anzuzeigen. Mit ein paar einfachen Befehlen können wir die Front-End-Seite aktivieren und die Modellfunktionen in Echtzeit aufrufen. Starten Sie im Projektverzeichnis nacheinander folgende Dienste:

Controller starten

python3 -m chat.server.controller

Modellarbeiter starten

python3 -m chat.server.model_worker --model-path models/testgpt --device mps

Für die Startmethode können Sie je nach Bedarf folgende Konfigurationsoptionen wählen:

  • --device mps-Option zum Aktivieren der GPU-Beschleunigung auf Mac-Computern (Apple Silicon- oder AMD-GPUs);
  • --device xpu-Option zum Aktivieren der Beschleunigung auf Intel XPU (Intel Data Center und Arc A-Series-GPUs);
  • --device npu ist die Option zum Aktivieren der Beschleunigung auf dem Huawei AI-Prozessor;
    • Erfordert InstallationAscend PyTorch-Adapter
    • CANN-Umgebungsvariablen festlegen: Quelle /usr/local/Ascend/ascend-toolkit/set_env.sh
  • --device CPU-Option zur alleinigen Ausführung auf der CPU, keine GPU erforderlich;
  • --num-gpus 2 gibt Optionen für die gleichzeitige Ausführung der GPU an.

Webservice starten

python3 -m chat.server.gradio_testgpt

Nachdem der Dienst bereit ist, können wir die lokal gestartete Webdienstadresse öffnen (http://0.0.0.0:7860), Sie können die komplette Frontend-Seite sehen.

kontaktiere uns

Willkommen auf der offiziellen Website von Codefuse:codefuse

Supongo que te gusta

Origin blog.csdn.net/CodeFuse/article/details/134011901
Recomendado
Clasificación