eoscf-contentbasedrs
Science Score: 44.0%
This score indicates how likely this project is to be science-related based on various indicators:
-
✓CITATION.cff file
Found CITATION.cff file -
✓codemeta.json file
Found codemeta.json file -
✓.zenodo.json file
Found .zenodo.json file -
○DOI references
-
○Academic publication links
-
○Academic email domains
-
○Institutional organization owner
-
○JOSS paper metadata
-
○Scientific vocabulary similarity
Low similarity (7.5%) to scientific vocabulary
Repository
Basic Info
- Host: GitHub
- Owner: athenarc
- License: other
- Language: Python
- Default Branch: master
- Size: 2.99 MB
Statistics
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
- Releases: 9
Metadata Files
README.md
Recommendation System for EOSCF
The recommendation system component focuses on creating recommendations for a requested resource. So far, its data source is only the mongo of the RS.
Use cases that are being implemented: https://wiki.eoscfuture.eu/display/EOSCF/RS+Content-based+Use+Cases
V2 BREAKING
- All the API urls have an added
v1eg.http://0.0.0.0:4559/similar_services/recommendation->http://0.0.0.0:4559/v1/similar_services/recommendation - The recommendation responses have changed to match RecommendationSet
json
{
"panel_id": "similar_services",
"recommendations": [
12, 23, ...
],
"explanations": [
"explanation1", "explanation2" ...
],
"explanations_short": [
"explanation_short1", "explanation_short2" ...
],
"score": [
0.7, 0.6, ...
],
"engine_version": "v1"
}
Building and Running
Prerequisites:
- Read access to RS Mongo (from Cyfronet)
- Read/write access to our Internal Mongo (from Athena)
- Read/write access to our internal Redis storage
Build and run:
- Make sure that you have added the
.envfile in the project root - Run
docker build -t rs-image . -f Dockerfile-rs - Run
docker run -p <port>:4559 rs-image
The image can be deployed using docker-compose if the .env variables are set correctly.
Environment variables
The following variables should be set in the .env file
```shell
These variable are of our internal mongo which is used for logging recommendations
Should not be confused with the RS Mongo
CONTENTBASEDRSMONGOHOST=contentbasedrecsmongo # The hostname of the contentbasedrecs mongo CONTENTBASEDRSMONGOPORT=27017 # The port of the internal mongo CONTENTBASEDRSMONGODATABASE=contentbasedrecs # The name of the database we are using for internal storage CONTENTBASEDRSMONGOUSERNAME="admin" # The username of a user of the internal mongo deployed by compose CONTENTBASEDRSMONGO_PASSWORD="admin" # The password of a user of the internal mongo deployed by compose
RS Mongo (from Cyfronet)
RSMONGOHOST=localhost # The hostname of the external RS mongo RSMONGOPORT=27017 # The port of the external RS mongo RSMONGODATABASE=rsdump # The name of the RS database RSMONGOUSERNAME=dev # The username of a user of the external RS mongo RSMONGO_PASSWORD=dev # The password of a user of the external RS mongo
INTERNALREDISHOST=redis # The hostname of the internal redis deployed by compose INTERNALREDISPORT=6379 # The port of the internal redis deployed by compose INTERNALREDISPASSWORD=redis_pswd # The password of the internal redis deployed by compose
The private sdn key for sentry which we use for error logging
SENTRY_SDN=https://12345...
Cronitor is used to monitor the offline updating of our RS data structures
stored in redis
CRONITORAPIKEY=123aababdas...
Monitoring access token is used to obtain reliability status of services in the portal before recommending them
MONITORINGAPIACCESS_TOKEN=daad2dasd... ```
Owner
- Name: ATHENA RC
- Login: athenarc
- Kind: organization
- Email: github@athenarc.gr
- Location: Athens, Greece
- Website: www.athenarc.gr
- Repositories: 65
- Profile: https://github.com/athenarc
ATHENA Research & Innovation Information Technologies
Citation (CITATION.cff)
# This CITATION.cff file was generated with cffinit.
# Visit https://bit.ly/cffinit to generate yours today!
cff-version: 1.2.0
title: EOSCF-Content-Based-RS
message: >-
If you use this software, please cite it using the
metadata from this file.
type: software
authors:
- given-names: Mike
family-names: Xydas
email: mxydas@athenarc.gr
affiliation: Athena R.C.
orcid: 'https://orcid.org/0000-0002-8057-7023'
- given-names: Anna
family-names: Mitsopoulou
email: anna.mitsopoulou@athenarc.gr
affiliation: Athena R.C.
- given-names: Katerina
family-names: Xagorari
email: katexagorari@athenarc.gr
affiliation: Athena R.C.
- given-names: Georgia
family-names: Koutrika
email: georgia@athenarc.gr
affiliation: Athena R.C.
license: GPL-3.0
GitHub Events
Total
Last Year
Dependencies
- APScheduler ==3.9.1
- PyYAML ==6.0
- aioredis ==1.3.1
- cronitor ==4.5.0
- fastapi ==0.75.2
- hiredis ==2.0.0
- locust ==2.11.1
- mlxtend ==0.20.0
- numpy ==1.22.2
- pandas ==1.4.1
- psycopg2 ==2.9.3
- psycopg2_binary ==2.9.3
- pyarrow ==8.0.0
- pydantic ==1.9.0
- pymongo ==4.0.1
- python-dotenv ==0.19.2
- redis ==4.3.4
- scikit_learn ==1.0.2
- sentence_transformers *
- sentry-sdk ==1.5.10
- uvicorn ==0.15.0
- mongo 6.0
- redis 6.2-alpine