GithubHelp home page GithubHelp logo

codalab / codalab-competitions Goto Github PK

View Code? Open in Web Editor NEW
497.0 45.0 130.0 73.21 MB

CodaLab Competitions

Home Page: https://codalab.lisn.fr

License: Other

Python 47.76% HTML 21.33% JavaScript 3.57% CSS 15.50% Shell 0.42% Batchfile 0.01% Dockerfile 0.03% Less 11.37%
artificial-intelligence benchmarks competitions machine-learning science

codalab-competitions's Introduction

CodaLab logo Circle CI codecov

What is CodaLab?

CodaLab is an open-source web-based platform that enables researchers, developers, and data scientists to collaborate, with the goal of advancing research fields where machine learning and advanced computation is used. CodaLab helps to solve many common problems in the arena of data-oriented research through its online community where people can share worksheets and participate in competitions.

To see Codalab Competition's in action, visit codalab.lisn.fr.

Codabench, the next-gen of CodaLab Competitions, is out. Try it out!

Documentation

Community

The CodaLab community forum is hosted on Google Groups.

Quick installation (for Linux!)

To participate in competitions, or even organize your own competition, you don't need to install anything, you just need to sign in an instance of the platform (e.g. this one). If you wish to configure your own instance of CodaLab competitions, here are the instructions:

Install docker and add your user to the docker group, if you haven't already

$ wget -qO- https://get.docker.com/ | sh
$ sudo usermod -aG docker $USER

Clone this repo and get the default environment setup

$ git clone https://github.com/codalab/codalab-competitions
$ cd codalab-competitions
$ cp .env_sample .env
$ pip install docker-compose
$ docker-compose up -d

Now you should be able to access http://localhost/

More details on how to configure your own instance:

License

Copyright (c) 2013-2015, The Outercurve Foundation. Copyright (c) 2016-2021, Université Paris-Saclay. This software is released under the Apache License 2.0 (the "License"); you may not use the software except in compliance with the License.

The text of the Apache License 2.0 can be found online at: http://www.opensource.org/licenses/apache2.0.php

Cite CodaLab Competitions in your research

@article{codalab_competitions_JMLR,
  author  = {Adrien Pavao and Isabelle Guyon and Anne-Catherine Letournel and Dinh-Tuan Tran and Xavier Baro and Hugo Jair Escalante and Sergio Escalera and Tyler Thomas and Zhen Xu},
  title   = {CodaLab Competitions: An Open Source Platform to Organize Scientific Challenges},
  journal = {Journal of Machine Learning Research},
  year    = {2023},
  volume  = {24},
  number  = {198},
  pages   = {1--6},
  url     = {http://jmlr.org/papers/v24/21-1436.html}
}

codalab-competitions's People

Contributors

adamtlord avatar anjithpal avatar bbearce avatar brendanmyers88 avatar carandraug avatar ckcollab avatar cpoulain avatar csrampey avatar dano314 avatar didayolo avatar dominiquemb avatar dtuantran avatar flavioalexander avatar gibsonbailey avatar irjudson avatar jared-cain avatar javierluraschi avatar jimmykodes avatar kashizui avatar laurentsenta avatar loicsarrazin avatar lotusgraham avatar madclam avatar ohmaley avatar percyliang avatar pujun-ai avatar quebecisnice avatar raisins avatar tthomas63 avatar xbaro avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

codalab-competitions's Issues

Remove Bundles menu item from main navigation menu

The /bundle view should not be exposed in the main menu bar. Bundles are not an end-user facing concept. There is on-going work to define how experiments, datasets, programs and macros are exposed to end-users.

Git commit hash in app for reporting

We need to have a way to specify the version (git commit hash) of the application that a bug or feature request or failure corresponds to.

For auto-reporting/feedback we should have it configured during deployment, initially just a link on the page with the url/hashref is good enough.

Script to seed web site with objects and data

This is a two step process:

  1. Need to fix current method asap:

    python .\manage.py loaddata .\fixtures\initial.json
    IntegrityError: Problem installing fixtures: The row in table 'web_contententity
    ' with primary key '1' has an invalid foreign key: web_contententity.container_i
    d contains a value '1' that does not have a corresponding value in web_contentco
    ntainer.id.

  2. Need to provide a more flexible way to import data. E.g write a Python script to insert object instances instead of having to manually create objects in the admin view before exporting them to JSON. This task is to define and provide the flexible mechanism for inserting data. Once we have the mechanism others can help fill-up the script (e.g import sample competition; import datasets, programs or more generically bundles).

Command to run tests

Provide basic test harness, instructions to run it and instructions to add a test.

Document progressive registration flow

Start a wiki page to document the intended registration flow.

For now the registration form will remain as is with e-mail, username and password as required field, and the requirement that username and e-mail must be unique in the system.

Update to cl-test1-ubuntu.cloudapp.net fails

Update to cl-test1-ubuntu.cloudapp.net fails

(venv)azureuser@cl-test1-ubuntu:/codalab$ python codalab/manage.py syncdb
Traceback (most recent call last):
File "codalab/manage.py", line 11, in
from configurations.management import execute_from_command_line
File "/home/azureuser/codalab/venv/local/lib/python2.7/site-packages/configurations/management.py", line 3, in
importer.install()
File "/home/azureuser/codalab/venv/local/lib/python2.7/site-packages/configurations/importer.py", line 76, in install
commands = management.get_commands()
File "/home/azureuser/codalab/venv/local/lib/python2.7/site-packages/django/core/management/init.py", line 109, in get_commands
apps = settings.INSTALLED_APPS
File "/home/azureuser/codalab/venv/local/lib/python2.7/site-packages/django/conf/init.py", line 53, in getattr
self._setup(name)
File "/home/azureuser/codalab/venv/local/lib/python2.7/site-packages/django/conf/init.py", line 48, in _setup
self._wrapped = Settings(settings_module)
File "/home/azureuser/codalab/venv/local/lib/python2.7/site-packages/django/conf/init.py", line 134, in init
raise ImportError("Could not import settings '%s' (Is it on sys.path?): %s" % (self.SETTINGS_MODULE, e))
ImportError: Could not import settings 'codalab.settings' (Is it on sys.path?): No module named djcelery
(venv)azureuser@cl-test1-ubuntu:
/codalab$

Notifications

We need to understand notifications in CodaLab. We need notifications for things:

  1. User requested participation in a Competition
  2. User's request was processed
  3. New Data for a competition was posted
  4. A phase for a competition became active (or inactive)
  5. New competitions or experiments have been created

There are a set of signals that it makes sense to think of as "notifications". We should figure out the notification architecture once, then grind through the different ways we want to use it.

This will make the system feel richer and tie together the entire system into a single experience.

Deleting a competition doesn't have referential integrity

Deleting a competition from the delete button works.
When creating a new competition (after deleting one), the new competition id collides with the deleted competition id for all associated data that was not deleted when the competition was.

We need to ensure we delete all associated data when we delete the competition.

Steps to reproduce:

  • Load up a fresh codalab following the instructions
  • delete the competition via the ui
  • run the competition.py script to recreate a competition (it will fail currently and shouldn't fail)

There should be real test for this that can be automated.

Complete sign-out process

This will make the completion of the sign-out process automatic (that is no need to click a button to confirm and as a result no need to style the page that is shown today).

First Competition Django Script

I'm going make a new issue to specifically write a django scripting script to build out our first competition so that I can capture all the competition information in one place (and also see if it works for populating data).

Create User Profile

A user should have a minimal profile.

This is where a user can see their personal information (link a gravatar, social account, etc).

This is also where we can allow users to view information about other participants, the last item in this story: https://trello.com/c/romJnmlT/19-view-competitions

We should be able to view profiles and edit your own (very little right now) information.

Permissions Review

We need to go through all of the actions and endpoints and make sure we're enforcing the access controls we intend.

unable to update cl-test1-ubuntu...

update cl-test1-ubuntu.cloudapp.net fails

(venv)azureuser@cl-test1-ubuntu:/codalab$ python codalab/manage.py syncdb
Traceback (most recent call last):
File "codalab/manage.py", line 11, in
from configurations.management import execute_from_command_line
File "/home/azureuser/codalab/venv/local/lib/python2.7/site-packages/configurations/management.py", line 3, in
importer.install()
File "/home/azureuser/codalab/venv/local/lib/python2.7/site-packages/configurations/importer.py", line 76, in install
commands = management.get_commands()
File "/home/azureuser/codalab/venv/local/lib/python2.7/site-packages/django/core/management/init.py", line 109, in get_commands
apps = settings.INSTALLED_APPS
File "/home/azureuser/codalab/venv/local/lib/python2.7/site-packages/django/conf/init.py", line 53, in getattr
self._setup(name)
File "/home/azureuser/codalab/venv/local/lib/python2.7/site-packages/django/conf/init.py", line 48, in _setup
self._wrapped = Settings(settings_module)
File "/home/azureuser/codalab/venv/local/lib/python2.7/site-packages/django/conf/init.py", line 134, in init
raise ImportError("Could not import settings '%s' (Is it on sys.path?): %s" % (self.SETTINGS_MODULE, e))
ImportError: Could not import settings 'codalab.settings' (Is it on sys.path?): No module named djcelery
(venv)azureuser@cl-test1-ubuntu:
/codalab$

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.