Bonjour!
Je cherche à mettre à jour une entrée dans un base sqlite avec sqlite3 mais ensuite au lancement de l'application qui utilise cette base j'ai un Warning et mon entrée est ignorée.
WARNING --> Found an invalid model config in the database. Ignoring this model.
La commande que j'utilise :
sqlite3 invokeai.db "UPDATE models SET config = json_replace(config, '$.trigger_phrases', '[style of Michelangelo Buonarroti, oil painting]') WHERE name = 'sdxl_style_of_michelangelo_buonarroti_v1.0';"
L'entrée à l'air correcte :
{"key":"c832fc50-2586-40c1-95ff-2b20a4e31f0c","hash":"blake3:a7990bd979113708d5bd7a296371b97460a6469950994b20929242ab116d8eaa","path":"/whatever/sdxl_style_of_michelangelo_buonarroti_v1.0.safetensors","name":"sdxl_style_of_michelangelo_buonarroti_v1.0","type":"lora","format":"lycoris","base":"sdxl","source":"/whatever/sdxl_style_of_michelangelo_buonarroti_v1.0.safetensors","source_type":"path","description":"sdxl lora model sdxl_style_of_michelangelo_buonarroti_v1.0","source_api_response":null,"cover_image":null,"submodels":null,"trigger_phrases":"[style of Michelangelo Buonarroti, oil painting]"}
Une chose n'est pas correcte : la valeur de la colonne trigger_phrases est [style of Michelangelo Buonarroti, oil painting] mais devrait être ["style of Michelangelo Buonarroti, oil painting"] c'est une colonne de type VIRTUAL qui est generée en lisant le contenu de la valeur trigger_phrases de la colonne config au format json qui vient d'être mise à jour:
trigger_phrases TEXT GENERATED ALWAYS as (json_extract(config, '$.trigger_phrases')) VIRTUAL
Quelqu'un pour m'aiguiller sur la bonne façon de faire svp?
# Hello
Posté par guitou . Évalué à 2 (+1/-0).
Pas tout a fait au point sur sqlite3 (j'apprends en te lisant que ca supporte le json!),
mais j'ai comme l'impression que tu as tout betement inverse les
'
et les[]
dans ta commande.++
Gi)
# résolu!
Posté par i M@N (site web personnel) . Évalué à 2 (+1/-0).
Je m'auto-réponds.
c'est json_set qu'il fallait utiliser pour s'assurer de la cohérence du json et aussi s'assurer que trigger_phrases soit un tableau et non une chaîne :
wind0w$ suxX, GNU/Linux roxX!
[^] # Re: résolu!
Posté par BAud (site web personnel) . Évalué à 3 (+1/-0). Dernière modification le 31 mars 2025 à 22:35.
écrit sur plusieurs lignes, c'est un peu plus lisible
Envoyer un commentaire
Suivre le flux des commentaires
Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.