| .. | |||
| v1 | 2 years ago | ||
| README.md | 2 years ago | ||
| example-json.tar.gz | 2 years ago | ||
| examples.http | 2 years ago | ||
| requirements.txt | 2 years ago | ||
| swagger.json | 2 years ago | ||
L'instance data-computer utilise l'application ezmaster [lodex-workers`](https://github.com/Inist-CNRS/lodex-workers).
Elle offre plusieurs services asynchrones pour des calculs et de transformations de données simples.
Tous les services proposés acceptent uniquement en entrée des fichiers corpus standards au format tar.gz.
Il faut préciser dans le fichier de configuration de l'instance qu'elle utilise les paquets nodejs suivant :
@ezs/analytics@ezs/basicsBien sûr, les dernières versions sont préférables.
Exemple:
{
"packages": [
"@ezs/core@3.0.5",
"@ezs/analytics@2.1.0",
"@ezs/basics@2.5.3",
"@ezs/spawn@1.4.4"
]
}
Créer des segments glissant 2 à 2 de tous les éléments d'un tableau et agrège ces segments pour les compter.
Le segment étant glissant, ce traitement sert à créer des segments qui représente un arbre hiérachique.
par exemple avec ces données en entrée:
[
{ "value": ["a", "b", "c"] },
{ "value": ["a", "c", "d"] },
{ "value": ["a", "b", "d"] },
{ "value": ["a", "b", "c", "d"] },
{ "value": ["a", "c", "d", "e"] }
]
on obtiendra :
[
{"source":"a","target":"b","weight":3,"origin":["#1","#3","#4"]},
{"source":"b","target":"c","weight":2,"origin":["#1","#4"]},
{"source":"a","target":"c","weight":2,"origin":["#2","#5"]},
{"source":"c","target":"d","weight":3,"origin":["#2","#4","#5"]},
{"source":"b","target":"d","weight":1,"origin":["#3"]},
{"source":"d","target":"e","weight":1,"origin":["#5"]}
]
NOTE: Le service accepte des tableaux de tableaux (cas d'usage lodex/istex)
| nom | description |
|---|---|
| indent (true/false) | Indenter le résultat renvoyer immédiatement |
| nom | description |
|---|---|
| X-Hook | URL à appeler quand le résultat sera disponible (facultatif) |
# Send data for batch processing cat input.tar.gz |curl --data-binary @- -H "X-Hook: https://webhook.site/dce2fefa-9a72-4f76-96e5-059405a04f6c" "http://localhost:31976/v1/tree-segment" > output.json # When the corpus is processed, get the result cat output.json |curl --data-binary @- "http://localhost:31976/v1/retrieve" > output.tar.gz
Créer des segments 2 à 2 avex tous les éléments d'un tableau et agrège ces segments pour les compter Les segments reprsentent toutes la associations possibles, ce traitement sert à créer des segments qui représente un réesau.
par exemple avec ces données en entrée:
[
{ "value": ["a", "b", "c"] },
{ "value": ["a", "c", "d"] },
{ "value": ["a", "b", "d"] },
{ "value": ["a", "b", "c", "d"] },
{ "value": ["a", "c", "d", "e"] }
]
on obtiendra :
[
{"source":"a","target":"b","weight":3,"origin":["#1","#3","#4"]},
{"source":"a","target":"c","weight":4,"origin":["#1","#2","#4","#5"]},
{"source":"b","target":"c","weight":2,"origin":["#1","#4"]},
{"source":"a","target":"d","weight":4,"origin":["#2","#3","#4","#5"]},
{"source":"c","target":"d","weight":3,"origin":["#2","#4","#5"]},
{"source":"b","target":"d","weight":2,"origin":["#3","#4"]},
{"source":"a","target":"e","weight":1,"origin":["#5"]},
{"source":"c","target":"e","weight":1,"origin":["#5"]},
{"source":"d","target":"e","weight":1,"origin":["#5"]}
]
NOTE: Le service accepte des tableaux ou des tableaux de tableaux
| nom | description |
|---|---|
| indent (true/false) | Indenter le résultat renvoyer immédiatement |
| nom | description |
|---|---|
| X-Hook | URL à appeler quand le résultat sera disponible (facultatif) |
# Send data for batch processing cat input.tar.gz |curl --data-binary @- -H "X-Hook: https://webhook.site/dce2fefa-9a72-4f76-96e5-059405a04f6c" "http://localhost:31976/v1/graph-segment" > output.json # When the corpus is processed, get the result cat output.json |curl --data-binary @- "http://localhost:31976/v1/retrieve" > output.tar.gz
Créer pour l'ensemble des documents un champ "lda" d'un ensemble de 5 topics. Chaque topic contient un champ "word", qui est composé une liste de 10 mots qui sont les plus caractéristiques du topic, ainsi que d'un champ "weight" qui donne la probabilité que le document soit classé dans le topic.
Par exemple, pour un document pris dans un ensemble de document (l'id "35" est totalement arbitraire)
{"id": 35, "value": "L'anglais est souvent enseign\u00e9 comme langue seconde dans de nombreux pays \u00e0 travers le monde."}
On obtiendra :
{
"id": 35,
"value": "L'anglais est souvent enseign\u00e9 comme langue seconde dans de nombreux pays \u00e0 travers le monde.",
"lda": {
"topic_1": {
"words": [
"plus",
"nombreux",
"nombre",
"grand",
"philosophie",
"concept",
"physique",
"second",
"fondamentale",
"relativite"
],
"weight": "0.018401673"
},
"topic_2": {
"words": [
"revolution",
"concept",
"francaise",
"philosophie",
"comme",
"revolutionne",
"empereur",
"tels",
"stoicisme",
"vertu"
],
"weight": "0.01821572"
},
"topic_3": {
"words": [
"etatsunis",
"physique",
"philosophie",
"temps",
"principe",
"existence",
"histoire",
"siecle",
"trous",
"generale"
],
"weight": "0.01818413"
},
"topic_4": {
"words": [
"nombreux",
"postulat",
"mathematiques",
"domaines",
"algebre",
"anglaise",
"connu",
"theoreme",
"devenu",
"science"
],
"weight": "0.018459676"
},
"topic_5": {
"words": [
"anglais",
"production",
"connu",
"langue",
"litterature",
"nombreux",
"monde",
"revolutionne",
"travers",
"siecle"
],
"weight": "0.92673886"
}
}
}
NOTE : l'algorithme a besoin de beaucoup de documents pour fonctionner (> 100 idéalement), d'où la non exhaustivité de l'exemple.
| nom | description |
|---|---|
| indent (true/false) | Indenter le résultat renvoyer immédiatement |
| nom | description |
|---|---|
| X-Hook | URL à appeler quand le résultat sera disponible (facultatif) |
# Send data for batch processing cat input.tar.gz |curl --data-binary @- -H "X-Hook: https://webhook.site/dce2fefa-9a72-4f76-96e5-059405a04f6c" "http://localhost:31976/v1/lda" > output.json # When the corpus is processed, get the result cat output.json |curl --data-binary @- "http://localhost:31976/v1/retrieve" > output.tar.gz