From 84377c91d602734d378f09b89b83c8250a15ccec Mon Sep 17 00:00:00 2001 From: Sosokker Date: Wed, 14 May 2025 16:12:26 +0700 Subject: [PATCH] change wording from pipeline to model in chapter 5 --- Chapters/Chapter_05.tex | 4 ++-- document.pdf | Bin 8521916 -> 8521916 bytes 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/Chapters/Chapter_05.tex b/Chapters/Chapter_05.tex index a604aac..5f22d75 100644 --- a/Chapters/Chapter_05.tex +++ b/Chapters/Chapter_05.tex @@ -488,7 +488,7 @@ Performance metrics are based on 2 metrics: \begin{table}[htbp] \centering - \caption{Pipeline Validation Metrics} + \caption{Model Validation Metrics} \label{tab:pipeline_validation_metrics} \begin{tabular}{llc} \toprule @@ -514,6 +514,6 @@ Table~\ref{tab:pipeline_validation_metrics} presents the validation performance In contrast, both \texttt{borbann-pipeline-3} and \texttt{borbann-pipeline-4} attain perfect JSON syntactic validity (100\%) but fail completely in Pydantic schema conformance (0.00\%). This suggests that although their outputs are syntactically correct, they do not adhere to the expected canonical data structure. -Based on this evaluation, we select \texttt{borbann-pipeline-2} as the final model for deployment. The superior schema adherence—despite not being perfect—makes it more suitable for downstream structured processing tasks. +Based on this evaluation, we select \texttt{borbann-pipeline-2} as the current model for deployment. The superior schema adherence—despite not being perfect—makes it more suitable for downstream structured processing tasks. A possible reason for the low schema conformance in pipelines 3 and 4 may be suboptimal prompt design during fine-tuning. The model may have overfit to an incorrect or inconsistent output structure due to insufficient coverage of schema variations in the training data. This highlights the importance of prompt engineering and data diversity when fine-tuning large language models for structured output tasks. diff --git a/document.pdf b/document.pdf index c073d35c9ef3be3c8af568a03bb26207127d5e0a..c888de28d3cecc1eb98145a00869b271539743d5 100644 GIT binary patch delta 13830 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 delta 13868 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