Zuvor ging SiliconCloud mit dem Sprachmodell desIn-line LoRA-Feinabstimmungsfunktion. Durch einfaches Hochladen von Korpusdaten und Erstellen einer Feinabstimmungsaufgabe erhalten Sie ein proprietäres feinabgestimmtes Sprachmodell.
Kürzlich wurde die LLM-Online-LoRA-Feinabstimmung von SiliconCloud um die Modelle Qwen2.5-32B, Qwen2.5-14B und Llama-3.1-8B als Feinabstimmungs-Basismodelle erweitert, was die Spielbarkeit der Feinabstimmung weiter verbessert und die Kosten für das Training und die Nutzung der Feinabstimmungsmodelle weiter reduziert.
In der Tat ist die Feinabstimmung eines proprietären großen Sprachmodells recht einfach. Mit der Feinabstimmungsfunktion von SiliconCloud können Sie nur ein paar Dutzend Trainingskorpora vorbereiten, um "signifikante" Änderungen an Ihrem Modell gegenüber dem Basismodell vorzunehmen.
vorläufige Vorbereitung
Erstens müssen wir uns darüber im Klaren sein, was mit der Feinabstimmung erreicht werden soll. Oft kann die Feinabstimmung dazu beitragen, dass ein Modell etwas lernt, das im Training nicht enthalten war, oder dass es einen bestimmten, unverwechselbaren Sprachstil entwickelt.
Für verschiedene Zwecke wird unser Ansatz unterschiedlich sein. Wenn das Modell beispielsweise ein bestimmtes Domänenwissen erlernen soll, benötigen Sie Trainingsdaten, die Fragen und Antworten auf der Grundlage dieser Daten enthalten, während Sie, wenn das Modell einen bestimmten typischen Sprachstil erlernen soll, Dialogdaten mit diesem Stil benötigen.
Vorbereitung der Daten
Die Feinabstimmung des LLM-Modells erfordert, dass die Daten in Form eines Dialogs mit einer Datenstruktur bereitgestellt werden, die im Wesentlichen mit der Aufrufnachricht des LLM übereinstimmt. Man kann sagen, dass die Schnittstelle zur Texterzeugung aufgerufen wird, um die fein abgestimmten Daten zu erstellen.
Nachstehend finden Sie ein Beispiel für ein typisches Stück feinabgestimmter Daten:
{"messages": [{"role": "system", "content": "You are a fire system expert"}, {"role": "user", "content": "How do I install a fire alarm in my home?"} , {"role": "assistant", "content": "Gemäß dem Home Fire Safety System (GB22370-2008) sollten Hausbrandmelder gemäß den Anforderungen des Herstellers installiert werden. Insbesondere sollte bei der Installation sichergestellt werden, dass sich das Gerät in einem normalen Überwachungszustand befindet und mit den entsprechenden Brandmeldern und anderen Komponenten verbunden ist. Der Installationsort sollte hohe Temperaturen, Feuchtigkeit und staubige Orte vermeiden, um den normalen Betrieb des Geräts zu gewährleisten."}]}
Für eine Feinabstimmung ist es in der Regel erforderlich, Dutzende solcher Daten vorzubereiten und sie als "jsonl"-Datei in Form einer Zeile pro Zeile zu speichern:
{"messages": [{"role": "system", "content": "You are a fire system expert"}, {"role": "user", "content": "How do I install a fire alarm in my home?"} , {"role": "assistant", "content": "Gemäß dem Home Fire Safety System (GB22370-2008) sollten Hausbrandmelder gemäß den Anforderungen des Herstellers installiert werden. Insbesondere sollte die Installation sicherstellen, dass sich das Gerät in einem normalen Überwachungszustand befindet und mit den entsprechenden Brandmeldern und anderen Komponenten verbunden ist. Der Installationsort sollte heiße, feuchte und staubige Bereiche vermeiden, um einen ordnungsgemäßen Betrieb des Geräts zu gewährleisten."}]} {"messages": [{"role": "system", "content": "You are a fire system expert"}, {"role": "user", "content": "What are the power supply requirements for fire alarms?"} , {"role": "assistant", "content": "Gemäß dem Home Fire Safety System (GB22370-2008) sollte die Hauptstromversorgung des Home Fire Alarm Controllers 220V, 50Hz AC sein, und das Eingangsende des Netzkabels sollte mit einem Terminal ausgestattet sein. Die Backup-Stromversorgung sollte eine Batterie sein, die mehrmals aufgeladen und entladen werden kann, und sie sollte in der Lage sein, die Batterie innerhalb von 24 Stunden auf die Nennkapazität von mehr als 80% aufzuladen, ohne die vom Hersteller angegebene Entladungsgrenze zu überschreiten, und sie sollte dann in der Lage sein, nach 48 Stunden vollständig aufgeladen zu werden."}]} {"messages": [{"role": "system", "content": "Sie sind Experte für Brandschutzsysteme"}, {"role": "user", "content": "Was sind die Anforderungen an die akustischen und optischen Signale eines Feueralarms?"} , {"role": "assistant", "content": "Gemäß dem Home Fire Safety System (GB22370-2008) muss der Schalldruckpegel des akustischen Signals des Feueralarms in 3 Metern Entfernung in mindestens einer Richtung mindestens 75 dB (A-bewertet) betragen und in 3 Metern Entfernung in jeder Richtung darf er nicht nicht mehr als 120 dB (A-bewertet) in 3 m Entfernung in jeder Richtung betragen. Das optische Signal des Feueralarms muss in einer Entfernung von 25 Metern bei einer Umgebungshelligkeit von 100lx bis 500lx deutlich sichtbar sein."}]} {"messages": [{"role": "system", "content": "Sie sind ein Experte für Brandschutzsysteme"}, {"role": "user", "content": "Was tun bei der Störungsmeldung eines Brandmelders?"} , {"role": "assistant", "content": "Nach dem Home Fire Safety System (GB22370-2008) ist bei einem Kommunikationsfehler mit den angeschlossenen Komponenten, einer Unterbrechung oder einem Kurzschluss der Verbindungsleitung zwischen dem Notstromladegerät und der Notstromversorgung, einer Unterbrechung oder einem Kurzschluss der Verbindungsleitung zwischen der Notstromversorgung und ihren Verbrauchern Bei einer Kommunikationsstörung zwischen den angeschlossenen Komponenten, einer unterbrochenen oder kurzgeschlossenen Leitung zwischen dem Notstromladegerät und der Notstromversorgung, einer unterbrochenen oder kurzgeschlossenen Leitung zwischen der Notstromversorgung und ihren Verbrauchern oder einer Unterspannung der Hauptstromversorgung muss die Brandmeldezentrale innerhalb von 100 Sekunden ein akustisches und optisches Störungssignal aussenden und die Art der Störung anzeigen. Das akustische Störungssignal muss manuell abgestellt werden können und bei einem weiteren Störungseingang wieder aktiviert werden können.} {"messages": [{"role": "system", "content": "Sie sind Experte für Brandschutzsysteme"}, {"role": "user", "content": "Wie funktioniert die Selbsttestfunktion eines Brandmelders?"} , {"role": "assistant", "content": "Gemäß dem Home Fire Safety System (GB22370-2008) sollte der Home Fire Alarm Controller in der Lage sein, eine Funktionsprüfung (Selbsttest) des Gerätes durchzuführen. Während der Ausführung der Selbsttestfunktion dürfen weder die von ihr gesteuerten externen Geräte noch die Ausgangskontakte agieren. Wenn die Selbsttestzeit 1 Minute überschreitet oder die Selbsttestfunktion nicht automatisch beendet werden kann, dürfen die Brandmeldefunktionen der nicht selbstgetesteten Teile und des Steuergeräts selbst nicht beeinträchtigt werden."}]} {"messages": [{"role": "system", "content": "You are a fire system expert"}, {"role": "user", "content": "What are the requirements for displaying messages on a fire alarm?"} {"role": "assistant", "content": "Gemäß den Bestimmungen des Brandschutzsystems für Privathaushalte (GB22370-2008) sollten Feuermelder für Privathaushalte, die Zahlen und Buchstaben zur Anzeige des Betriebszustands verwenden, in der Reihenfolge der Anzeige von Feueralarmen, Überwachungsalarmen und anderen Zuständen in der Reihenfolge der Anzeige der Informationsebene von hoch bis niedrig angeordnet werden. Statusinformationen der oberen Ebene sollten mit Priorität angezeigt werden, und die Anzeige von Statusinformationen der unteren Ebene sollte die Anzeige von Statusinformationen der oberen Ebene nicht beeinträchtigen. Die angezeigten Meldungen müssen mit dem entsprechenden Status übereinstimmen und leicht zu erkennen sein."}]} {"messages": [{"role": "system", "content": "You are a fire system expert"}, {"role": "user", "content": "What is the sound pressure level of the fire alarm?"} , {"role": "assistant", "content": "Nach dem Home Fire Safety System (GB22370-2008) sollte der Schalldruckpegel des Home Fire Alarm Controllers in verschiedenen Alarmzuständen (1 Meter direkt davor) nicht weniger als 75dB (A-bewertet) betragen."}]} {"messages": [{"role": "system", "content": "You are a fire system expert"}, {"role": "user", "content": "How to install a combustible gas detector?"} , {"role": "assistant", "content": "Gemäß "Combustible Gas Alarm Controller" (GB16808-2008) sollten Brandgasmelder gemäß den Anforderungen des Herstellers installiert und mit dem Brandgaswarngerät verbunden werden. Der Installationsort sollte hohe Temperaturen, Feuchtigkeit und staubige Orte vermeiden, um den normalen Betrieb der Geräte zu gewährleisten."}]} {"messages": [{"role": "system", "content": "You are a fire protection system expert"}, {"role": "user", "content": "What are the requirements for the alarm function of the combustible gas detector?"} , {"role": "assistant", "content": "Gemäß der Richtlinie Combustible Gas Alarm Controller (GB16808-2008) sollte der Brandgasmelder die Funktion eines Niedriggrenzwertalarms oder eines Niedriggrenzwert- und Hochgrenzwertalarms mit zwei Segmenten haben. Bei Eingang eines Alarmsignals für brennbare Gase muss das Steuergerät innerhalb von 10 Sekunden einen Alarmton und ein Lichtsignal ausgeben und bis zur manuellen Rückstellung aufrechterhalten."}]} {"messages": [{"role": "system", "content": "You are a fire system expert"}, {"role": "user", "content": "How to check the insulation of a fire alarm?"} , {"role": "assistant", "content": "Gemäß dem "Household Fire Safety System" (GB22370-2008) messen Sie den Isolationswiderstandswert, nachdem Sie mit dem Isolationswiderstandsprüfgerät 60 Sekunden±5 Sekunden lang eine Gleichspannung von 500V±50V an die externen stromführenden Klemmen bzw. das Gehäuse des Prüflings angelegt haben. Messen Sie den Isolationswiderstandswert. Der Isolationswiderstandswert zwischen den externen stromführenden Klemmen des Prüflings mit Isolationsanforderungen und dem Gehäuse darf nicht weniger als 20 MΩ betragen; der Isolationswiderstandswert zwischen der Stromeingangsklemme des Prüflings und dem Gehäuse darf nicht weniger als 50 MΩ betragen."}
Wenn wir in unserem Tagesgeschäft eine relativ große Menge an qualitativ hochwertigen Daten gesammelt haben, können wir mit der Feinabstimmung beginnen, indem wir Datendateien erstellen, die die Formatanforderungen durch einfache Datenbereinigung erfüllen. Wenn wir nicht genügend Daten gesammelt haben oder der Bereinigungsprozess komplizierter ist, können wir versuchen, die Feinabstimmung mit Hilfe von großen Modellen durchzuführen und Daten mit Modellen zu konstruieren.
Als Nächstes wollen wir anhand eines Beispiels den Prozess der Datenerstellung üben. Versuchen wir, ein großes Modell eines "Brandbekämpfungsexperten" zu trainieren, indem wir Fragen und Antworten anhand von Brandbekämpfungsstandards konstruieren.
Daten zur tektonischen Feinabstimmung
SiliconCloud bietet ein Qwen2.5-Modell mit 128K Kontexten, was mehr als genug ist, um umfangreiche Inhalte abzudecken.
Zunächst müssen wir lokal die Datei vorbereiten, die für die Erstellung der Daten verwendet werden soll, z. B. "GB22370-2008 Domestic Fire Safety Systems.pdf".
Als Nächstes müssen wir den Inhalt der Datei extrahieren, die Eingabeaufforderung schreiben und das Qwen Big Model Daten generieren lassen, die den oben genannten Anforderungen entsprechen. Dies kann entweder im Code geschehen oder mit Hilfe der Dify und andere Schnittstellenwerkzeuge zu vervollständigen.
Nehmen Sie das Beispiel der Konfiguration eines Workflows in Dify:
Die Konfigurationsdatei des Startknotens wird hochgeladen, und die Felder der Systemeingabeaufforderung im Trainingskorpus werden ausgefüllt;
2. verwenden Sie den Dokumentenextraktionsknoten und den Code-Knoten, die mit Dify geliefert werden, um den Inhalt der Datei in Text umzuwandeln;
Rufen Sie über den LLM-Knoten das Modell Qwen/Qwen2.5-72B-Instruct-128K von SiliconCloud auf (wenn die Länge der Datei weniger als 32K beträgt, können Sie ein anderes von der Plattform bereitgestelltes Modell wählen); wenn Sie dieses Modell nicht finden können, können Sie es durch die folgenden Schritte hinzufügen:
-
-
- Einstellungen - Modellhersteller, wählen Sie SiliconFlow;
- Klicken Sie auf Modell hinzufügen, geben Sie die erforderlichen Parameter ein (siehe Abbildung) und speichern Sie.
-
- Ein Stapel von Korpusdaten kann nach dem Lauf erhalten werden, indem die Ausgabe des Makromodells als Ausgabe des Workflows verwendet wird;
- Als Nächstes kopieren Sie einfach den Inhalt, speichern ihn als .jsonl-Datei und laden ihn in SiliconCloud hoch, um die Feinabstimmungsaufgabe zu erstellen.
Wenn die auf einmal erzeugten Daten nicht ausreichen, können mehrere Läufe durchgeführt werden, um mehr Daten zu erzeugen.
Es ist wichtig, darauf hinzuweisen, dass mehr fein abgestimmte Daten nicht unbedingt besser sindSelbst wenn wir nur 1 Datenelement haben, können wir mit der Feinabstimmung beginnen. Auch wenn nur ein einziger Datensatz vorliegt, können wir mit der Feinabstimmung beginnen. Wenn wir hingegen viele Daten haben, die nicht von ausreichender Qualität sind, kann der Effekt der Feinabstimmung nicht wie erwartet ausfallen.
app. Beschreibung: "Eine Datei hochladen, tägliche Q&A-Inhalte auf der Grundlage des Inhalts der Datei generieren, unter Verwendung des Qwen2.5-Modells in SiliconCloud 128K-Kontexten, Korpusdaten im JSONL-Format". ⚠️ Hinweise: - Aufgrund der Beschränkungen von Dify wird der Inhalt von Dateien mit mehr als 80.000 Zeichen abgeschnitten. - Der generierte Inhalt dient nur als Referenz, es können Illusionen oder inhaltliche Fehler sowie Formatierungsfehler auftreten, bitte achten Sie auf das Screening ' icon: 🤖. icon_background: '#FFEAD5' Modus: Arbeitsablauf name: Feinabstimmung des Korpusbauers use_icon_as_answer_icon: false Art: app Version: 0.1.5 Arbeitsablauf. conversation_variables: [] environment_variables: [] features. file_upload: [] environment_variables: [] features. allowed_file_extensions. - .JPG - .JPG - .JPG - .GIF - .WEBP - .SVG erlaubte_dateitypen. - .GIF .WEBP .SVG erlaubte_file_upload_methods. - lokale_datei - entfernte_url aktiviert: false fileUploadConfig: audio_file_size_limit: 50 audio_file_size_limit: 50 batch_count_limit: 5 Dateigröße_Grenzwert: 15 image_file_size_limit: 10 Grenzwert für die Größe von Videodateien: 100 Arbeitsablauf_Datei_Hochladen_Grenze: 10 Bild. aktiviert: false anzahl_grenzwerte: 3 workflow_file_upload_limit: 10 image: aktiviert: falsch number_limits: 3 transfer_methods. - lokale_datei - entfernte_url anzahl_grenzwerte: 3 opening_statement: '' retriever_resource. aktiviert: true sensitive_word_avoidance: aktiviert: false aktiviert: false speech_to_text. aktiviert: false suggested_questions: [] suggested_questions_after_answer: [enabler: false speech_to_text: false aktiviert: false speech_to_text: aktiviert: false suggested_questions: [] suggested_questions_after_answer: aktiviert: false aktiviert: false Sprache: '' Stimme: '' graph: false Kanten. - Daten: isInIteration: false isInIteration: falsch sourceType: start targetType: Dokument-Extraktor id: 1735807686274-source-1735807758092-target Quelle: '1735807686274' sourceHandle: Quelle Ziel: '1735807758092' targetHandle: Ziel type: benutzerdefiniert zIndex: 0 - targetHandle: target type: benutzerdefiniert zIndex: 0 data. isInIteration: falsch sourceType: Dokument-Extrahierer targetType: code id: 1735807758092-source-1735807761855-target Quelle: '1735807758092' sourceHandle: Quelle Ziel: '1735807761855' targetHandle: Ziel type: benutzerdefiniert zIndex: 0 - targetHandle: target type: benutzerdefiniert zIndex: 0 data. isInIteration: falsch sourceType: code targetType: llm id: 1735807761855-source-1735807764975-target Quelle: '1735807761855' sourceHandle: Quelle Ziel: '1735807764975' targetHandle: ziel type: benutzerdefiniert zIndex: 0 - targetHandle: target type: benutzerdefiniert zIndex: 0 data. isInIteration: falsch sourceType: llm targetType: end id: 1735807764975-source-1735807769820-target Quelle: '1735807764975' sourceHandle: quelle Ziel: '1735807769820' targetHandle: Ziel type: benutzerdefiniert zIndex: 0 targetHandle: Zieltyp: benutzerdefiniert zIndex: 0 - target type: benutzerdefiniert zIndex: 0 nodes: 0 data. desc: '' selected: false Titel: Start typ: start variables: allowed_file_extensions: [] - allowed_file_extensions: [] allowed_file_types: [] - [] erlaubt_file_types: document allowed_file_upload_methods: [] allowed_file_types: document - lokale_datei - entfernte_url Bezeichnung: Korpusdokument max_length: 10 Optionen: [] erforderlich: true Typ: Datei-Liste Variable: Anhänge - allowed_file_extensions: [] erlaubte_dateitypen. - Bild allowed_file_upload_methods: [] allowed_file_types: image - lokale_datei - entfernte_url label: Auslösewort (Systemaufforderung im Training) max_length: 48 Optionen: [] erforderlich: true Typ: Texteingabe Variable: Auslöser Höhe: 116 id: '1735807686274' position. x: 30 y: 258 positionAbsolut. x: 30 y: 258 selected: false sourcePosition: rechts targetPosition: links type: benutzerdefiniert data: data: y: 258 selected: false sourcePosition: right targetPosition: left type: custom - data. is_array_file: wahr is_array_file: wahr selected: false Titel: Dokumentenextraktor Typ: Dokument-Extrahierer variable_selector. - '1735807686274' - Anhänge Höhe: 92 id: '1735807758092' position. x: 334 y: 258 positionAbsolut. x: 334 y: 258 selected: false sourcePosition: rechts targetPosition: links type: benutzerdefiniert data: data: y: 258 selected: false sourcePosition: right targetPosition: left type: custom - data. code: "def main(artikelabschnitte: liste) -> dict:\n try:\n # Kombiniere Listenelemente zu einem String \n\ \"\\n\".join(articleSections)\n \n \n \n \n \\ # Abfangen der ersten 80.000 Zeichen \n truncated_text = combined_text[:80.000]\n \n \n \n \n return {\n \"result\": truncated_text\n \n \n }\n except Exception as e:\n # Fehlerbehandlung \n return {\n \n \n \n \n \n \n \n }" code_language: python3 desc: '' outputs. Kinder: null Kinder: null Typ: Zeichenkette ausgewählt: false Titel: Codeausführung Typ: Code Variablen: value_selector: value_selector - value_selector. - '1735807758092' - Text Variable: articleSections Höhe: 54 id: '1735807761855' position. x: 638 y: 258 positionAbsolute. x: 638 y: 258 selected: false sourcePosition: rechts targetPosition: links type: benutzerdefiniert data: data: y: 258 selected: false sourcePosition: right targetPosition: left type: custom - daten. Kontext. aktiviert: false variable_selector: [] desc: '' model: [] desc: '' completion_params: [] desc: '' model: [] completion_params. frequency_penalty: 0.5 max_tokens: 4096 Temperatur: 0,3 Modus: Chat Name: Qwen/Qwen2.5-72B-Instruct-128K Anbieter: Qwen/Qwen2.5-72B-Instruct-128K siliconflow prompt_template. - id: b6913d40-d173-45d8-b012-98240d42a196 Rolle: System text: '[Rolle Sie sind ein LLM Large Language Modelling Scientist, der den Nutzern hilft, fein abgestimmte Daten zu konstruieren, die der Spezifikation entsprechen und die vom Nutzer bereitgestellten Inhalte berücksichtigen! Aufgaben - Für einen bestimmten Inhalt listen Sie jeweils 10 generische Fragen auf; - Geben Sie zu jeder Frage eine Antwort, indem Sie den Originaltext des Inhalts zitieren und eine vernünftige Erklärung oder Herleitung des Inhalts geben; - und organisieren die Fragen und Antworten in einem standardisierten JSONL-Format. [Anforderungen 1. die Fragen **zitieren** nicht direkt aus dem "Inhalt", sie sollten nahe am realen Leben sein; 2. die Fragen sollten in der Umgangssprache formuliert sein, um "falsch, groß und leer" zu vermeiden; 3. die Antwort sollte dem Originaltext treu bleiben, und die Interpretation des Originaltextes sollte sich nicht von der Hauptidee oder dem Gedanken des Originaltextes lösen; Spezifikation der Ausgabe * Ausgabespezifikation JSONL, eine Angabe pro Zeile * Jede Datenzeile sollte ein Array von Nachrichten enthalten, von denen jede drei Zeilen mit den Rollen System, Benutzer und Assistent enthalten sollte. * Die Daten, bei denen die Rolle System ist, sind besonders wichtig, da die System-Eingabeaufforderung beim Training und ihr Inhalt das vom Benutzer angegebene "Auslösewort" verwendet. * Die Daten, deren Rolle Benutzer ist, entsprechen der aufgeführten "Frage". * Die Daten, deren Rolle Assistent ist, entsprechen der "Antwort" auf die "Frage". * Es folgt ein Beispiel: ``` {"messages": [{"role": "system", "content": "Sie sind ein zeitgenössischer Wissenschaftler"}, {"role": "user". "Inhalt": "Wie soll ich studieren?"} , {"role": "assistant", "content": "Hsien-hsien ist leicht zu färben; um seinen Eltern zu dienen, kann man sein Bestes tun; um seinem Herrscher zu dienen, kann man sein Bestes tun; um sich mit Freunden anzufreunden, steht man zu seinem Wort. Auch wenn ich sage, ich habe nichts gelernt, werde ich sagen, ich habe gelernt."} ```'' - id: 61530521-14cf-4eaf-8f06-a4bc89db3cb1 Rolle: Benutzer text: '``Inhalt'' {{#1735807761855.result#}} "Auslösendes Wort" {{#1735807686274.trigger#}}' ausgewählt: false Titel: LLM Typ: LLM Variablen: [] Vision. aktiviert: false Höhe: 98 id: '1735807764975' position. x: 942 y: 258 positionAbsolut. x: 942 y: 258 selected: true sourcePosition: rechts targetPosition: links type: benutzerdefiniert Daten: Daten: y: 258 - data. desc: '' outputs: value_selector: '' - value_selector. - '1735807764975' - text Variable: text ausgewählt: false Titel: Ende Typ: Ende Höhe: 90 id: '1735807769820' position. x: 1246 y: 258 positionAbsolut. x: 1246 y: 258 selected: false sourcePosition: rechts targetPosition: links type: benutzerdefiniert data: data: y: 258 selected: false sourcePosition: right targetPosition: left type: custom - daten. Autor: Dify desc: '' Höhe: 88 selected: false showAuthor: true text: '{"root":{"children":[{"children":[{"detail":0, "format":0, "mode": "normal", "style":"", "text": "Setze niedrigere Temperatur, um die Stabilität des Ausgabeformats zu verbessern", "type": "text", "version":1}], "direction": "ltr", "format":"", "indent":0, "type": "paragraph", "version":1," textFormat":0}], "Richtung": "ltr", "Format":"", "Einzug":0, "Typ": "Wurzel", "Version":1}}' Thema: blau titel: '' typ: '' Breite: 240 Höhe: 88 id: '1735808753316' position. x: 951.4285714285714 y: 375.7142857142857 positionAbsolute. x: 951.4285714285714 y: 375.7142857142857 y: 375.7142857142857 selected: false sourcePosition: rechts targetPosition: links type: benutzerdefinierte-Note Breite: 240 - Daten. Verfasser: Dify desc: '' Höhe: 88 selected: false showAuthor: true text: '{"root":{"children":[{"children":[{"detail":0, "format":0, "mode": "normal", "style":"", "text": "Führe den Inhalt mehrerer Dokumente zusammen und fange die ersten 8W Zeichen", "type": "text", "version":1}], "direction": "ltr", "format":"", "indent":0, "type": "paragraph", "version":1, "textFormat":0}]," direction": "ltr", "format":"", "indent":0, "type": "root", "version":1}}' Thema: blau titel: '' typ: '' Breite: 240 Höhe: 88 id: '1735808799815' position. x: 640 y: 338.5714285714286 positionAbsolute. x: 640 y: 338.5714285714286 ausgewählt: false sourcePosition: rechts targetPosition: links type: benutzerdefinierte-Note Breite: 240 Ansichtsfenster. x: 0 y: 0 vergrößern: 0.7
Neben der Verwendung von Werkzeugen wie Dify ist auch die direkte Verwendung von Modellen wie Qwen/Qwen2.5-Coder-32B-Instruct zur Unterstützung bei der Erstellung von Skripten ein effizienter Weg, um fein abgestimmte Daten zu erstellen, und kann mehrere Beschränkungen der Drei-Parteien-Plattformen umgehen, so dass die Vorteile der SiliconCloud-Plattform in Bezug auf modellreiche, effiziente Schlussfolgerungen und die Gewinnung hochwertigerer Korpusdaten voll zum Tragen kommen. Daten.
Feinabstimmung von Training und Validierung
Erstellen Sie eine neue Feinabstimmungsaufgabe auf der SiliconCloud-Plattform, laden Sie die gerade gespeicherte .jsonl-Datei hoch, wählen Sie sie aus und klicken Sie auf Feinabstimmung starten. Warten Sie, bis die Feinabstimmungsaufgabe die Warteschlange beendet hat. Sobald die Ausführung abgeschlossen ist, können Sie das feinabgestimmte Modell verwenden oder die Ergebnisse über eine Online-Erfahrung oder API validieren. Mit der Vergleichsfunktion des Online-Dialogmodells können Sie auch die Modellreaktionen und -ergebnisse mehrerer Checkpoint- und Basismodelle vergleichen und das am besten funktionierende Modell für die weitere Verwendung auswählen. Feinabstimmung Modell vs. Basismodell: Vergleich zwischen mehreren Kontrollpunkten: An diesem Punkt haben wir lokale Dateien verwendet, um LLM-Feinabstimmungsdaten zu erstellen und einen Fire Expert LLM feinabzustimmen. Natürlich können Sie mit den obigen Schritten auch versuchen, Ihren eigenen domänenspezifischen LLM zu erstellen.