- Applen tutkijat hienosäätivät avoimen lähdekoodin koodaustyökalua luodakseen SwiftUI:n automatisoidun palauteputken kautta.
- Iteratiivinen silmukka – kääntäminen, visuaalinen tarkistus GPT-4V:llä ja suodatus – loi suuren ja korkealaatuisen harjoitusjoukon.
- Viiden kierroksen jälkeen tiimi rakensi UICoderin ja lähes 996,000 4 SwiftUI-ohjelmaa, jotka suoriutuivat perusmallia paremmin ja lähentelivät GPT-XNUMX-tasoa laadussa.
- Koska Swiftiä oli alkuperäisessä korpusessa niukasti, hyödyt tulivat itse luodusta datajoukosta; lähestymistapa todennäköisesti yleistyy muihin käyttöliittymätyökaluihin.

Applen tutkijat han detallado una forma práctica de enseñar a un modelo de código abierto a escribir interfaces de usuario SwiftUI robustas. En lugar de depender de ejemplos escasos y etiquetados manualmente, el equipo creó un motor de datos que permite al modelo aprender de sus propios resultados bajo supervisión automatizada.
Idea keskittyy yhteen bucle de retroalimentación automático que genera código SwiftUI, verifica si compila y comprueba qué tan closely el resultado coincide con una descripción escrita. Se trata de una revisión neutraali y medida de cómo un modelo de lenguaje grande puede mejorar progressivamente en la generación de código UI sin necesitar un corpus preexistente masivo de SwiftUI.
Cómo funcionó la canalización de autoentrenamiento

Työntekijän työ StarChat-beta, un modelo avoimen lähdekoodin ajustado para tareas de programación, y le proporcionó descripciones concisas de interfaces. A partir de esas indicaciones, el modelo generó un flujo masivo de synteettiset SwiftUI-ohjelmat diseñados para reflejar los diseños y comportamientos solicitados.
Cada candidato fue sometido a un Swift-kääntäjä para vahvistus que realmente funcionaba. Luego, un modelo de visión y lenguaje, GPT-4V, comparó la interfaz renderizada con la descripción original, actuando como un revisor automatizado de fidelidad visual y estructural. Para ampliar tu conocimiento acerca del desarrollo de interfaces, también puedes revisar cómo trabajar con controles deslizantes en SwiftUI.
Cualquier resultado que fallara en compilar, pareciera fuera de tema o duplicara resultados anteriores, era descartado. El resto conformaba un conjunto de entrenamiento de alta calidad Useado para ajustar el modelo, alimentando la siguiente ronda con ejemplos más limpios y relevantes.
Este ciclo se repitió varias veces. Con cada pasada, el modelo mejorado producía mejores resultados en SwiftUI, lo que generaba datos más precisos para su ajuste. Después de cinco rondas, los investigadores habían recopilado cerca de un millón de programas SwiftUI (996,000 XNUMX) y un adjustado llamado -malli UICoder.
Arvioinneissa UICoder superó al model base (StarChat-Beta) en metrias automaticas y valoraciones humanas. Además, logró un pormestari porcentaje de éxito en compilación, un beneficio práctico para quienes necesitan que el código funcione a la primera.
Poca presencia de SwiftUI en los datos originales

Parte de la historia radica en el koulutuskorpus käytä StarChat-Beta-ohjelmaa. Sus datos provinieron principalmente de tres fuentes, ninguna de las cuales proporcionaba mucho contenido de SwiftUI de manera natural:
- TheStack, una colección muy grande de repositorios de código con licencia permisiva.
- Verkkosivut rastreadas julkisessa internetissä.
- OpenAssistant-Guanaco, un conjunto de datos más pequeño de afinación por instrucciones.
Según los investigadores, los repositorios de Swift fueron vahingossa sattumalta Al construir TheStack. Una revisión manual también encontró solo una respuesta con código Swift en aproximadamente diez mil ejemplos de OpenAssistant-Guanaco, con la Mayor parte del código Swift que probablemente llegó mediante rastreos web, a menudo más ruidoso y menos estructurado joka on arkistoissa.
Esta escasez es tärkeä: las mejoras de UICoder no provinieron de reusar eemplos de SwiftUI ya vistos. La mejora vino del conjunto de datos auto-generado y curado mediante el ciclo de compilación y comparación, que proporcionó la cobertura de SwiftUI ausente en las fuentes originales. Para entender cómo los diferentes lenguajes se integran en la programación, revisa cómo verificar la version de Swift en tu entorno.
Los autores mantienen que esta metodología podría aplicarse a otros lenguajes y kits de herramientas UI, ei ainoastaan SwiftUI:ta. Täydellinen dokumentti—”UICoder: Suurten kielimallien hienosäätö käyttöliittymäkoodin luomiseksi automaattisen palautteen avulla”—on saatavilla arXiv-tiedostona para quienes quieran profundizar en los detalles y métricas.
Tämä työ on minulle tarpeetonta kaupunginjohtajan edut Applen mallille SwiftUI:lle maakunta bucle de retroalimentación automatizado que escala la calidad de los datos, en lugar de partr de un gran conjunto oculto de código Swift. Con UICoder acercándose en calidad a GPT-4 y superándolo en tasa de éxito de compilación, esta estrategia resulta ser una reference práctica para enseñar a los modelos a general código UI cuando no hay eemplos claros disponibles.