Terms query - different boost values depending on matching term

Is it possible to have different boosts for different terms in a terms query (similar to the multimatch query)?

[pseudocode]
"terms" : {
"some_field" : ["value^2", "second_value^5","third_value^10"]
}
[/pseudocode]

I'm pretty sure terms query is not scored. I've only ever used for
filtering, and only for things like ids that aren't analyzed (or that I can
reason about the analysis pretty easily)

Are you sure you don't just want a series of match queries surrounded by
bool

For example something like...

"bool": {
"must": [
{"match": {
"some_field" {
"query": "value"
"boost": 2
}
},
{"match": {
"some_field" {
"query": "second_value"
"boost": 5
}
},
...etc...
]
}

This basically sums the result of each match clause's score, biasing
heavily towards items that have multiple matches.

I am trying to implement personalized autocomplete where output would be biased towards user search history. Let's say the user has made 100 searches for 12 items, and each item has been searched for N number of times.

I would need 12 MATCH queries, each with a different boost value, which sounds like an overkill that would degrade performance.

Is there another approach I could implement?