model selecting
This commit is contained in:
@@ -21,11 +21,19 @@ type RPScenarios struct {
|
||||
Description string
|
||||
Prompt string
|
||||
}
|
||||
type RPModel struct {
|
||||
ID string
|
||||
Key string
|
||||
Name string
|
||||
ContextSize int `db:"context_size"`
|
||||
}
|
||||
type RPUser struct {
|
||||
UserID int64 `db:"user_id"`
|
||||
UserPrompt string `db:"user_prompt"`
|
||||
SelectedPreset string `db:"selected_preset"`
|
||||
Preset *RPGeneralPreset
|
||||
SelectedModel string `db:"selected_model"`
|
||||
Model *RPModel
|
||||
UsedTokens int64 `db:"used_tokens"`
|
||||
}
|
||||
|
||||
@@ -56,11 +64,15 @@ func (rep *RPRepository) GetUser(id int64) (*RPUser, error) {
|
||||
return user, err
|
||||
}
|
||||
user.Preset, err = rep.GetPreset(user.SelectedPreset)
|
||||
if err != nil {
|
||||
return user, err
|
||||
}
|
||||
user.Model, err = rep.GetModel(user.SelectedModel)
|
||||
return user, err
|
||||
}
|
||||
func (rep *RPRepository) UpdateUser(user *RPUser) error {
|
||||
_, err := rep.db.NamedExec(
|
||||
"UPDATE rp_users SET selected_preset=:selected_preset, used_tokens=:used_tokens, user_prompt=:user_prompt WHERE user_id=:user_id;",
|
||||
"UPDATE rp_users SET selected_preset=:selected_preset, used_tokens=:used_tokens, user_prompt=:user_prompt, selected_model=:selected_model WHERE user_id=:user_id;",
|
||||
user,
|
||||
)
|
||||
return err
|
||||
@@ -83,7 +95,7 @@ func (rep *RPRepository) GetUserPreset(user *RPUser) (*RPGeneralPreset, error) {
|
||||
|
||||
func (rep *RPRepository) GetAllPresets() ([]*RPGeneralPreset, error) {
|
||||
presets := make([]*RPGeneralPreset, 0)
|
||||
err := rep.db.Select(&presets, "SELECT * FROM rp_general_presets;")
|
||||
err := rep.db.Select(&presets, "SELECT * FROM rp_general_presets ORDER BY id DESC;")
|
||||
return presets, err
|
||||
}
|
||||
func (rep *RPRepository) GetPreset(id string) (*RPGeneralPreset, error) {
|
||||
@@ -94,7 +106,7 @@ func (rep *RPRepository) GetPreset(id string) (*RPGeneralPreset, error) {
|
||||
|
||||
func (rep *RPRepository) GetAllScenarios() ([]*RPScenarios, error) {
|
||||
scenarios := make([]*RPScenarios, 0)
|
||||
err := rep.db.Select(&scenarios, "SELECT * FROM rp_scenarios;")
|
||||
err := rep.db.Select(&scenarios, "SELECT * FROM rp_scenarios ORDER BY id DESC;")
|
||||
return scenarios, err
|
||||
}
|
||||
func (rep *RPRepository) GetScenario(id int) (*RPScenarios, error) {
|
||||
@@ -102,3 +114,14 @@ func (rep *RPRepository) GetScenario(id int) (*RPScenarios, error) {
|
||||
err := rep.db.Get(scenario, "SELECT * FROM rp_scenarios WHERE id=$1;", id)
|
||||
return scenario, err
|
||||
}
|
||||
|
||||
func (rep *RPRepository) GetModel(id string) (*RPModel, error) {
|
||||
model := new(RPModel)
|
||||
err := rep.db.Get(model, "SELECT * FROM rp_models WHERE id=$1;", id)
|
||||
return model, err
|
||||
}
|
||||
func (rep *RPRepository) GetAllModels() ([]*RPModel, error) {
|
||||
models := make([]*RPModel, 0)
|
||||
err := rep.db.Select(&models, "SELECT * FROM rp_models ORDER BY id DESC;")
|
||||
return models, err
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user