There's two types of stability you should be aware of: API behavior and
You should expect that the version'd API behavior will remain stable. So,
if we choose to make a change to the request or response style, that will
appear under the path "v3/" and so forth. So, if you write code against
the v2/ API (you shouldn't be writing new code against the v1/ API, but you
*can* expect it to be stable), you should expect that it will continue to
work as expected. You can see the swagger spec's for the APIs at these
You should expect that the API behavior
described will not change.
But we may still need to update the models in the future and that would
likely change the range of scores slightly. We include versions of the
models in the basic API response so that you can cache and invalidate
scores that you get from the API. We're still working out the right way to
report evaluation metrics to you so that you'll be able to dynamically
adjust any thresholds you set in your own application. FWIW, I do not
forsee us changing our modeling strategy substantially in the short- or
mid-term. It took us ~3 months of work to prepare for the breaking change
that was announced in this thread.
In the end, we're interested in learning about your needs and concerns so
that we can adjust our process and make changes accordingly. So if you
have concerns with any of the above please let us know.
On Sat, Apr 30, 2016 at 5:50 PM, Moritz Schubotz <physik(a)physikerwelt.de>
can you say a few words about the stability of the API.
We are working on a scoring model for user contributions, rather than
revisions using Apache Flink.
However, it would be nice to have a somehow compatible API in the end.
On Thu, Apr 7, 2016 at 10:55 AM, Aaron Halfaker <aaron.halfaker(a)gmail.com>
FYI, the new models (BREAKING CHANGE) are now
On Sun, Apr 3, 2016 at 5:38 AM, Aaron Halfaker <aaron.halfaker(a)gmail.com
> Hey folks, we have a couple of announcements for you today. First is
a large set of new functionality that you might like to take
advantage of. We'll also want to talk about a *BREAKING CHANGE on April
Don't know what ORES is? See
> *New functionality*
> *Scoring UI*
> Sometimes you just want to score a few revisions in ORES and
structure is hard. So, we've build a simple scoring
> <https://ores.wmflabs.org/ui/> that will allow you to more easily
set of edits.
*New API version*
We've been consistently getting requests to include more information in
ORES' responses. In order to make space for this new information, we
> to change the structure of responses. But we wanted to do this without
> breaking the tools that are already using ORES. So, we've developed a
> versioning scheme that will allow you to take advantage of new
> functionality when you are ready. The same old API will continue to be
> available at https://ores.wmflabs.org/scores/
, but we've added two
> additional paths on top of this.
> - https://ores.wmflabs.org/v1/scores/
is a mirror of the old
which will henceforth be referred to as "v1"
implements a new response
that is consistent between all sub-paths and
adds some new
> *Swagger documentation*
> Curious about the new functionality available in "v2" or maybe what the
> change was from "v1"? We've implemented a structured description of
> versions of the scoring API using swagger --
which is becoming a
for this sort of thing. Visit https://ores.wmflabs.org/v1/
to see the Swagger user-interface.
to get the specification in a
*Feature values & injection*
Have you wondered what ORES uses to make it's predictions? You can now
ORES to show you the list of "feature"
statistics it uses to score
revisions. For example,
return the score with a mapping of feature values used by the "wp10"
article quality model in English Wikipedia to score oldid=34567892
<https://en.wikipedia.org/wiki/Special:Diff/34567892>. You can also
"inject" features into the scoring process to see how that affects the
> *Breaking change -- new models*
> We've been experimenting with new learning algorithms to make ORES work
> better and we've found that we get better results with gradient
<https://en.wikipedia.org/wiki/Gradient_boosting> and random forest
> <https://en.wikipedia.org/wiki/Random_forest> strategies than we do
> the current linear svc
> <https://en.wikipedia.org/wiki/Support_vector_machine> models. We'd
these new, better models deployed as soon as possible, but with
new algorithm comes a change in the range of
probabilities returned by
> model. So, when we deploy this change, any tools that uses hard-coded
> thresholds on ORES' prediction probabilities will suddenly start
> strangely. Regretfully, we haven't found
a way around this problem, so
> we're announcing the change now and we plan to deploy this *BREAKING
> CHANGE on April 7th*. Please subscribe to the AI mailinglist
> <https://lists.wikimedia.org/mailman/listinfo/ai> or watch our project
> page [[:m:ORES <https://meta.wikimedia.org/wiki/ORES>]] to catch
> announcements of future changes and new functionality.
> In order to make sure we don't end up in the same situation the next
> we want to change an algorithm, we've
included a suite of evaluation
> statistics with each model. The filter_rate_at_recall(0.9),
> filter_rate_at_recall(0.75), and recall_at_fpr(0.1) thresholds
critical thresholds (should review, needs review, and definitely
damaging -- respectively) that can be used to automatically configure
> wiki tool. You can find out these thresholds for your model of choice
> adding the ?model_info parameter to
requests. So, come breaking
> we strongly recommend basing your thresholds
on these statistics in the
> future. We'll be working to submit patches to tools that use ORES in
to implement this flexibility. Hopefully, all you'll need to
> is worth with us on those.
> -halfak & The Revision Scoring team
Wikitech-l mailing list
Mit freundlichen Grüßen
Telefon (Büro): +49 30 314 22784
Telefon (Privat):+49 30 488 27330
Wikitech-l mailing list