In der heutigen Welt der Softwareentwicklung ist ein Programm namens Refact
Der Open-Source-Agent für KI-Entwicklung erregt Aufmerksamkeit. Er ist mehr als nur ein Tool zur Vervollständigung des Codes und soll den gesamten Lebenszyklus der Softwareentwicklung abdecken, vom Verstehen der Anforderungen bis zur endgültigen Bereitstellung. Bemerkenswert.Refact
Sie war die erste Organisation, die das SWE-bench
KI-Entwicklungsagent für Tests.SWE-bench
ist ein Benchmark-Test zur Bewertung der Problemlösungsfähigkeiten großer Sprachmodelle bei realen Softwareentwicklungsaufgaben, wobei das Bestehen des Tests bedeutet, dass sie zuverlässig in der Lage sind, reale Entwicklungsprobleme zu bewältigen.
Kernfunktionen und Architektur
Refact
Die Fähigkeiten beruhen auf vier Hauptmerkmalen:
- Full Process Agentur: Sie kann direkt mit dem
GitHub
undDocker
im Gesang antwortenPostgreSQL
und andere Entwicklungs-Toolchains zusammenwirken. Dies bedeutet, dass eine Reihe von Aufgaben wie das Schreiben von Code, die Konfiguration der Umgebung, die Migration von Datenbanken usw. automatisiert werden können, indem mehrere Schritte, die früher manuell durchgeführt werden mussten, miteinander verbunden werden. - kontextabhängig: Das Tool ist auf der Grundlage der
Qwen2.5-Coder-1.5B
Retrieval Augmentation Generation (RAG) Technologie für Modelle. Durch das Durchsuchen der lokalen Codebasis und der zugehörigen technischen Dokumentation liefert sie einen Code, der besser zu den bestehenden Spezifikationen und der Geschäftslogik des Projekts passt, was nach offiziellen Angaben zu einer Verbesserung der Abschlussgenauigkeit um 67% führt. - Unterstützung mehrerer Modelle::
Refact
Die Architektur ist offen. Neben der nativen Unterstützung fürClaude 3.5 Sonnet
im Gesang antwortenGPT-4o
Zusätzlich zu diesen Modellen ermöglicht es den Nutzern den Zugang und den Wechsel zu denGemini
undDeepseek
oder andere große Sprachmodelle von Drittanbietern. Dieses Model-as-a-Service (MaaS)-Design bietet Unternehmen die Flexibilität, das optimale Modell auf der Grundlage von Kosten- und Leistungsanforderungen dynamisch auszuwählen. - Privater Einsatz: für Organisationen mit hohen Anforderungen an die Datensicherheit und den Schutz von Codes.
Refact
Eine selbst gehostete Bereitstellungsoption ist verfügbar. Dies bedeutet, dass alle Daten und KI-Berechnungen auf den eigenen Servern eines Unternehmens ausgeführt werden können, wodurch es die vollständige Kontrolle über die Datenhoheit erhält, was besonders für stark regulierte Branchen wie das Finanz- und Gesundheitswesen wichtig ist.
Was die Systemarchitektur betrifft, so ist dasRefact
Zugriff auf über 20 Entwickler-Tools über die Tool-Anpassungsschicht, einschließlich gängiger Projektmanagement-Tools Jira
und Werkzeuge zur kontinuierlichen Integration Jenkins
und bildet ein relativ vollständiges Entwicklungsökosystem. Die Kontextengine und das Sicherheitssystem gewährleisten die Qualität des generierten Codes und die betriebliche Konformität.
Modul-Klassifizierung | Funktionale Umsetzung | Wert der Stärken |
---|---|---|
Werkzeuganpassungsschicht | Unterstützt mehr als 20 Entwickler-Tools APIs | Bildung eines vollständigen ökologischen Entwicklungskreislaufs |
Modellierung als Dienstleistung (MaaS) | Selbstentwickelter Algorithmus zur Verkehrsplanung | Unterstützung des dynamischen Wechsels zwischen verschiedenen Modellen (Claude 3.5 / GPT-4o / Gemini ) |
Kontextmotor | Lokale Codebasis + Fernabfrage von Dokumenten | Sicherstellen, dass der Code mit den Projektspezifikationen und der geschäftlichen Semantik übereinstimmt |
Sicherheitssystem | Kubernetes nativ kompatibel |
Sichere API-Schlüssel und Prüfung sensibler Vorgänge |
Demonstration von praktischen Anwendungsszenarien
Refact
Der Wert liegt in der Effizienz bei der Lösung der täglichen Entwicklungsaufgaben.
Szenario 1: Schnelle Implementierung eines API-Prototyps
Die Entwickler müssen keinen Beispielcode mehr von Grund auf schreiben. Wenn beispielsweise eine API für das Durchblättern von Benutzerdaten benötigt wird, müssen die Entwickler nur einen einfachen Befehl in natürlicher Sprache bereitstellen:
"Entwurf von Paging-Abfragen auf der Grundlage von Feldern der Benutzertabelle RESTful API"
Refact
Der Arbeitsablauf ist wie folgt:
- Analyse der vorhandenen Benutzertabellen in der Datenbank
schema
. - Generierung eines Anpassungstechnologie-Stacks (z. B.
Flask
vielleichtRust
) des Backend-Codes. - Automatisch für die Bereitstellung erstellt
Dockerfile
. - Rufen Sie die Model Inference Toolchain auf, um automatisch Container-Images zu erstellen und Unit-Tests zu generieren.
Dieser Prozess kann die Arbeitsstunden in der traditionellen Entwicklung auf ein Minimum reduzieren.
Szenario 2: Unterstützte Rekonfiguration von Altsystemen
Angesichts der komplexen Aufgaben der Systemmigration.Refact
kann ebenso hilfreich sein. Angenommen, es besteht die Notwendigkeit, eine alte Node.js
Umstellung des Protokollierungssystems auf Python FastAPI
Framework können Entwickler die folgenden Anweisungen ausführen:
# 指令:将 Express 日志中间件重构为 ASGI 兼容的格式
refact suggest "Express -> ASGI middleware 重构"
Das System generiert nicht nur den Code der Interoperabilitätsschicht für die Kompatibilität mit den alten und neuen Systemen, sondern gibt auch zusätzliche Optimierungsempfehlungen, wie z. B. Lösungen für die thread-sichere Nachrüstung und Verbesserungen des Modells für die Ausnahmebehandlung.
Leitfaden für den schnellen Einsatz
Die Benutzer können je nach Bedarf zwischen einer schnellen Einzelplatzlösung oder einer Containerbereitstellung auf Unternehmensebene wählen.
Vorbereitung der Umwelt:
- etw. unterstützen
CUDA 8.0+
(in Form eines Nominalausdrucks)NVIDIA
Anzeigekarte (Computer) Docker
Desktop-Umgebung (v24.0+)Python
3.8+ Betriebsumgebung
Schritte für die Bereitstellung:
Sie können eine der folgenden Methoden für die Bereitstellung wählen.
# 方式1:单机快速启动
# 安装基础组件
pip install .
# 初始化配置,设置默认语言模型(例如 GPT-4o)
refact config --init
# 方式2:企业级容器部署
docker pull smallcloudai/refact:latest
docker run -p 8008:8008 smallcloudai/refact:latest
Nach der Bereitstellung können Sie das Plugin in der IDE konfigurieren. Nehmen Sie VS Code
Ein Beispiel:
- Suchen und installieren Sie im Plugin-Markt
Refact AI Assistant
Plug-ins. - Geben Sie in der Plugin-Konfiguration die lokale Dienstadresse ein:
http://127.0.0.1:8008
. - Verwendung von Shortcuts
Ctrl+Alt+R
(oderCmd+Alt+R
) zum Abrufen derRefact
Intelligentes Terminal.
Vergleich mit etablierten Tools
Oberbefehlshaber (Militär) Refact
zusammen mit GitHub Copilot
im Gesang antworten AWS CodeWhisperer
Ein Vergleich der gängigen Tools zeigt einige Unterschiede in ihrer Designphilosophie.
Vergleichsmaßstab | Refact | GitHub Kopilot | AWS CodeWhisperer |
---|---|---|---|
Erweiterbarkeit des Modells | Unterstützung des API-Zugangs von Drittanbietern, flexible Modellauswahl | beschränkt auf OpenAI Modellierung |
beschränkt auf AWS eigenes Modell |
Bereitstellungsmodell | Unterstützung für den privaten EinsatzGewährleistung der Datenhoheit | reiner Cloud-Dienst | reiner Cloud-Dienst |
Code Context Awareness | Abruf der gesamten lokalen Codebasis mit vollständigerem Kontext | Normalerweise beschränkt auf die aktuell geöffnete Datei | Normalerweise beschränkt auf die aktuell geöffnete Datei |
Integration von Multitools | zusammen mit Docker , DB Tiefe Integration mit mehr als 20 Tools |
Grundlegende IDE-Integration | Grundlegende IDE-Integration |
Kosten des Einsatzes | Privater Einsatz spart Lizenzkosten | Erwerb von Lizenzen nach Sitz | Abhängigkeiten AWS Verbrauch von Datenverarbeitungsressourcen |
Refact
Das größte Unterscheidungsmerkmal ist seineOffenheitim Gesang antwortenKontrollierbarkeit. Die Unterstützung privater Implementierungen macht sie zu einer praktikablen Option für datenschutzsensible Unternehmen, da sie die Notwendigkeit von GitHub Copilot
Die Grenzen des ausschließlichen Rückgriffs auf Cloud-basierte Dienste. Die geschätzten Kosteneinsparungen von etwa $3000 pro Jahr ergeben sich in erster Linie aus dem Wegfall der Kosten für den Erwerb von Jahreslizenzen für jeden Entwickler und stattdessen aus einer einmaligen Hardware-Investition und Wartungskosten. Dieses Modell ist für Unternehmen, die bereits über einige Rechenressourcen verfügen, kostengünstiger.