Skip to content
GitLab
Menu
Projects
Groups
Snippets
Loading...
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
Menu
Open sidebar
OpenDAS
ollama
Commits
00ebda8c
Unverified
Commit
00ebda8c
authored
Mar 21, 2025
by
Parth Sareen
Committed by
GitHub
Mar 21, 2025
Browse files
Revert "parser: remove role validation from Modelfile parser" (#9917)
This reverts commit
ffbfe833
.
parent
d14ce75b
Changes
2
Show whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
16 additions
and
12 deletions
+16
-12
parser/parser.go
parser/parser.go
+11
-7
parser/parser_test.go
parser/parser_test.go
+5
-5
No files found.
parser/parser.go
View file @
00ebda8c
...
@@ -7,7 +7,6 @@ import (
...
@@ -7,7 +7,6 @@ import (
"errors"
"errors"
"fmt"
"fmt"
"io"
"io"
"log/slog"
"net/http"
"net/http"
"os"
"os"
"os/user"
"os/user"
...
@@ -302,6 +301,7 @@ const (
...
@@ -302,6 +301,7 @@ const (
var
(
var
(
errMissingFrom
=
errors
.
New
(
"no FROM line"
)
errMissingFrom
=
errors
.
New
(
"no FROM line"
)
errInvalidMessageRole
=
errors
.
New
(
"message role must be one of
\"
system
\"
,
\"
user
\"
, or
\"
assistant
\"
"
)
errInvalidCommand
=
errors
.
New
(
"command must be one of
\"
from
\"
,
\"
license
\"
,
\"
template
\"
,
\"
system
\"
,
\"
adapter
\"
,
\"
parameter
\"
, or
\"
message
\"
"
)
errInvalidCommand
=
errors
.
New
(
"command must be one of
\"
from
\"
,
\"
license
\"
,
\"
template
\"
,
\"
system
\"
,
\"
adapter
\"
,
\"
parameter
\"
, or
\"
message
\"
"
)
)
)
...
@@ -379,10 +379,14 @@ func ParseFile(r io.Reader) (*Modelfile, error) {
...
@@ -379,10 +379,14 @@ func ParseFile(r io.Reader) (*Modelfile, error) {
case
stateParameter
:
case
stateParameter
:
cmd
.
Name
=
b
.
String
()
cmd
.
Name
=
b
.
String
()
case
stateMessage
:
case
stateMessage
:
role
=
b
.
String
()
if
!
isValidMessageRole
(
b
.
String
())
{
if
!
isKnownMessageRole
(
b
.
String
())
{
return
nil
,
&
ParserError
{
slog
.
Warn
(
"received non-standard role"
,
"role"
,
role
)
LineNumber
:
currLine
,
Msg
:
errInvalidMessageRole
.
Error
(),
}
}
}
role
=
b
.
String
()
case
stateComment
,
stateNil
:
case
stateComment
,
stateNil
:
// pass
// pass
case
stateValue
:
case
stateValue
:
...
@@ -552,7 +556,7 @@ func isNewline(r rune) bool {
...
@@ -552,7 +556,7 @@ func isNewline(r rune) bool {
return
r
==
'\r'
||
r
==
'\n'
return
r
==
'\r'
||
r
==
'\n'
}
}
func
is
Known
MessageRole
(
role
string
)
bool
{
func
is
Valid
MessageRole
(
role
string
)
bool
{
return
role
==
"system"
||
role
==
"user"
||
role
==
"assistant"
return
role
==
"system"
||
role
==
"user"
||
role
==
"assistant"
}
}
...
...
parser/parser_test.go
View file @
00ebda8c
...
@@ -256,13 +256,13 @@ You are a multiline file parser. Always parse things.
...
@@ -256,13 +256,13 @@ You are a multiline file parser. Always parse things.
{
{
`
`
FROM foo
FROM foo
MESSAGE
somerandomrole I'm ok with you adding any role message now
!
MESSAGE
badguy I'm a bad guy
!
`
,
`
,
[]
Command
{
{
Name
:
"model"
,
Args
:
"foo"
},
{
Name
:
"message"
,
Args
:
"somerandomrole: I'm ok with you adding any role message now!"
},
},
nil
,
nil
,
&
ParserError
{
LineNumber
:
3
,
Msg
:
errInvalidMessageRole
.
Error
(),
},
},
},
{
{
`
`
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment