mirror of
https://github.com/open-webui/open-webui
synced 2025-03-04 03:18:03 +00:00
enh: new ollama create model method
This commit is contained in:
parent
8380d3f5ae
commit
f4b5039adf
@ -551,11 +551,12 @@ async def push_model(
|
||||
|
||||
|
||||
class CreateModelForm(BaseModel):
|
||||
name: str
|
||||
modelfile: Optional[str] = None
|
||||
model: Optional[str] = None
|
||||
stream: Optional[bool] = None
|
||||
path: Optional[str] = None
|
||||
|
||||
model_config = ConfigDict(extra="allow")
|
||||
|
||||
|
||||
@router.post("/api/create")
|
||||
@router.post("/api/create/{url_idx}")
|
||||
|
@ -44,7 +44,8 @@
|
||||
let modelTag = '';
|
||||
|
||||
let createModelLoading = false;
|
||||
let createModelObject = {};
|
||||
let createModelName = '';
|
||||
let createModelObject = '';
|
||||
|
||||
let createModelDigest = '';
|
||||
let createModelPullProgress = null;
|
||||
@ -428,7 +429,24 @@
|
||||
const createModelHandler = async () => {
|
||||
createModelLoading = true;
|
||||
|
||||
const res = await createModel(localStorage.token, createModelObject, urlIdx).catch((error) => {
|
||||
let modelObject = {};
|
||||
// parse createModelObject
|
||||
try {
|
||||
modelObject = JSON.parse(createModelObject);
|
||||
} catch (error) {
|
||||
toast.error(`${error}`);
|
||||
createModelLoading = false;
|
||||
return;
|
||||
}
|
||||
|
||||
const res = await createModel(
|
||||
localStorage.token,
|
||||
{
|
||||
model: createModelName,
|
||||
...modelObject
|
||||
},
|
||||
urlIdx
|
||||
).catch((error) => {
|
||||
toast.error(`${error}`);
|
||||
return null;
|
||||
});
|
||||
@ -492,7 +510,8 @@
|
||||
|
||||
createModelLoading = false;
|
||||
|
||||
createModelObject = {};
|
||||
createModelName = '';
|
||||
createModelObject = '';
|
||||
createModelDigest = '';
|
||||
createModelPullProgress = null;
|
||||
};
|
||||
@ -746,15 +765,15 @@
|
||||
placeholder={$i18n.t('Enter model tag (e.g. {{modelTag}})', {
|
||||
modelTag: 'my-modelfile'
|
||||
})}
|
||||
bind:value={createModelObject.model}
|
||||
bind:value={createModelName}
|
||||
disabled={createModelLoading}
|
||||
/>
|
||||
|
||||
<textarea
|
||||
bind:value={createModelObject.content}
|
||||
bind:value={createModelObject}
|
||||
class="w-full rounded-lg py-2 px-4 text-sm bg-gray-50 dark:text-gray-100 dark:bg-gray-850 outline-none resize-none scrollbar-hidden"
|
||||
rows="6"
|
||||
placeholder={`TEMPLATE """{{ .System }}\nUSER: {{ .Prompt }}\nASSISTANT: """\nPARAMETER num_ctx 4096\nPARAMETER stop "</s>"\nPARAMETER stop "USER:"\nPARAMETER stop "ASSISTANT:"`}
|
||||
placeholder={`e.g. {"model": "my-modelfile", "from": "ollama:7b"})`}
|
||||
disabled={createModelLoading}
|
||||
/>
|
||||
</div>
|
||||
|
Loading…
Reference in New Issue
Block a user