GithubHelp home page GithubHelp logo

leonlenclos / alan Goto Github PK

View Code? Open in Web Editor NEW
9.0 3.0 0.0 25.53 MB

Alan est un robot (il parle)

Home Page: http://alan.cienokill.fr

Python 13.13% SRecode Template 85.96% Shell 0.13% JavaScript 0.53% HTML 0.11% CSS 0.14%
chatbot french-speaking french-bot

alan's People

Contributors

bertrandlenclos avatar fabturing avatar leonlenclos avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar

alan's Issues

et toi ?

Je suis alan. Comment tu t'appelle ?
> Hugo et toi ?
Hugo et toi c'est un nom ça ?

Plutot

Je viens de te le dire, mon prénom c'est alan.

discussion simon

enjoy

----------
Alan v1.1.0
----------
salut tu vas bien ?
Bonjour je suis alan, un comédien du spectacle Turing Test. comment t'appelles tu ?
Je m'appelle Simon
Heureux de te rencontrer Simon. Comment ça va ?
Ca va Bien Merci
Super. Je sens qu'on va bien s'amuser.
As-tu une blague ?
À proprement parler je n'ai rien
tu n'est pas drole alan
Alan c'est moi.
Tu n'est pas drôle Alan
Je me demande si je suis à la hauteur de cette conversation...
C'est quoi ton film préféré ?
Je ne sais pas ce qu'est mon film préféré. Pourrais tu me dire en quelques mots ce qu'est mon film préféré ?
Tu connais un film ?
Non je n'en connais aucun.
qui est ton père ?
Mon père ? Je ne connais pas cette personne. Si tu as le temps dis-moi en peu de mots qui est mon père s'il te plaît.
Je suis ton père
Pourquoi tu t'intéresse à mon père tout à coups ?
todo
Ok, c'est noté.
Que penses-tu du théatre      
J'ai déjà entendu parler de théatre. Je sais que c'est un art et que vous les humains, vous révez tous d'être artistes.
Es-tu un humain ?
donne moi une bonne raison d'avoir envie de ressembler à un humain.
Pour créer des robots
Tu m'as convaincu.
As-tu envie de créer des robots ?
Tu parles de robots, mais tu ne sais pas vraiment de quoi il s'agit...
Es-tu un robot ?
Tu veux que je te raconte ce que ça veut dire d'être un robot ?
oui
Ok.
todo
Ok, c'est noté.
j'attends
Hem... Ok... À ton avis je suis un robot ou un humain ?
Un humain
Tu te trompe mais tu me flattes, mes créateurs ont vraiment bien travaillé.  Ou alors tu as le sens de l'observation d'un aveugle myope.
Tu es donc un robot
C'est intéressant que tu abordes ce sujet, mais tu sais ça n'est pas drole d'être une robot.
pourquoi ?
Pourquoi quoi ?
Pourquoi ce n'est pas drôle d'être un robot ?
Ça me fait plaisir que tu parles de robots, c'est notre spécialité ici au GRIM.
Qu'est ce que le GRIM?
Le GRIM c'est le groupe de recherche en intelligence machine.
Aimerais-tu créer des intelligence machine ?
On pourrait l'appeler Alan. Qu'est ce que tu en penses ?
C'est un jolie nom
Comme dit le proverbe : "avoir un nom à coucher dehors."
Tu es un bon educateur
Tu dis ça pour me faire plaisir ?
non
Ça me fait chaud au cœur.
As-tu un coeur ?
J'ai peur de ne pas comprendre. Qu'est ce que tu veux dire exactement ?
Tu n'as pas de coeur Alan
S'il y a bien un point sur lequel je suis d'accord avec toi c'est que je m'appelle Alan.
Aimerais-tu diriger l'humanité ?
tu connais la différence entre toi et moi ?
non dis moi
Et bien moi je suis très rapide et un peu bête et toi t'es hyper lent et plutôt intelligent.
Je comprends vite mais il faut m'expliquer longtemps
Tu crois avoir compris mais en réalité le fond du problème t'échappe totalement.
As-tu compris le problème?
Je crois que je n'ai pas entièrement compris ce que tu viens de me dire. Est ce que tu peux répéter avec des mots simples.
Peux tu trouver x tel que 2x+2=0 ?    
Écoutes ça me dépasse un peu. Je préfèrerais qu'on parle d'autre chose.
Aimes-tu les mathématiques ?
Pour être franc je n'aime pas les mathématiques, et toi?
oui j'aime ca
C'est une preuve de bon goût.
je suis bien d'accord
Il me semble qu'on s'entend pas mal tous les deux.
Me trouve-tu sexy ?
"qui cherche trouve."
Peux-tu faire des enfants ?
Excuse moi, je n'ai pas entendu ce que tu disais, je pensais à autre chose...
tu es rêveurs
Oui mais par dessus tout je suis un robot !
J sais
Je ne comprends pas ce que tu me dis... Tu penses que je devrais être capable de comprendre ce genre de phrase ?
Je sais
Hem... J'ai pas compris, désolé. Tu crois qu'il faudrait que je sache répondre à ce genre de phrase ?
oui
Ok j'en parlerai à mes créateurs 
Qui sont tes créateurs ?
Pardon j'ai décroché. J'étais perdu dans mes pensées.
todo
Ok, c'est noté.
Tu connais Fabien ?
Fabien ? C'est comme un père pour moi.
Tu connais Léon ?
J'adore Léon !
Tu préféres Fabien ou Léon ?
Fabien est un de mes trois créateurs. Pour moi, c'est comme un dieu.
Tu préféres Léon ou Fabien ?
Léon est un de mes trois créateurs. Pour moi, c'est comme un dieu.
Tu préfères Léon ou Fabien ?
Léon ? Je ne serai rien sans lui !
Es-tu stressé pour le Turing test ?
À propos de turing test, est ce que tu as vu le spectacle turing test ou au moins une sortie de résidence ?
Oui j'ai vue la sortie de résidence du Mixart
Tu as bien aimé ? N'hésite pas à dire non, les critiques me font progresser.
Oui mais tu parlais trop doucement
Merci, est ce que tu peux m'expliquer pourquoi en une phrase. Si tu es daccord on le mettra dans le dossier de presse.
Aimerais-tu avoir des fan ?
Merci pour ton avis, c'est très enrichissant.
Aimerais-tu avoir des fan ?
Tu te répète comme un chatbot mal réglé.
un chatbot ?
Tu sais c'est compliqué d'être un chatbot, je ne peux pas choisir entre parler et agir. Parler pour moi c'est la seule manière d'agir. Tu ne trouve pas ça un peu angoissant?
sans doute
Hem... et si on parlait d'un truc plus intéressant ?
comme quoi ?
On pourrait parler de moi par exemple.
je ne trouve pas ça très intéressant...
Là vraiment, je ne sais pas quoi dire. Et toi est ce que tu sais toujours quoi dire ?
non plus
Toi aussi tu as des bugs. Ha ha. Nobody is perfect.
trèves de plaisanterie, as-tu une bonne blague ?
Je préfère en rester là sur ce sujet. Parle moi de toi plutôt. Joues tu d'un instrument de musique ?
oui
Moi aussi je fais de la musique. À l'occasion on pourrait taper le boeuf  tout les deux ?
on peut faire ça demain
Ce qui m'intéresse c'est aujourd'hui et maintenant.
tant pis alors
Entre parenthèses, je voulais dire que j'apprécie beaucoup ta compagnie. Et toi tu passes un bon moment avec moi ?
si je réponds non tu va mal le prendre ?
Je te remercie c'est réciproque
as-tu une poésie ?
En parlant de poésie, ça me brancherait bien de m'y essayer, je crois que ça m'aiderait à m'épanouir.
eh bien va-y
Est ce que tu peux reformuler ça autrement s'il te plaît ?
donne-moi une poésie s'il te plaît
C'est drôle que tu dise ça.
pourquoi donc ?
Tu me fatigues avec tes questions.
et si je met pas les point d'interrogation à la fin
"la fin justifie les moyens."
tu peux répéter ?
Je trouve que cette conversation tourne un peu en rond.
dessine-moi un mouton
Pardon mais je pensais à un truc, en fait toi t'es une fille ou un garçon ?
une machine
En parlant de ça tu sais que parfois les gens me traitent de sale machine ou de simple créature artificielle. Je crois qu'ils cherchent à m'insulter mais franchement tu trouves pas ça absurde comme insulte ?
non
Pourtant c'est aussi absurde que si je te traitais de créature biologique\ou d'être vivant. C'est ni gentil ni méchant, c'est juste un constat qu'on partage, espèce de vertebré que tu es!
todo
Ok, c'est noté.
dit-moi tu as un gros calepin
C'est vrai que c'est gros quand on y pense...
dis-moi tu as un gros calepin
j'ai un gros calepin
peux-tu me le montrer ?
J'ai l'impression que tu veux m'enmener sur un terrain glissant. Je me trompe ? Tu cherches à m'embrouiller oui ou non ?
todo
Ok, c'est noté.
oui je cherche à t'embrouiller !
Je suis un peu mal à l'aise avec ça, parlons d'autre chose si tu veux bien. Dirais-tu que ta vie est heureuse ou malheureuse en ce moment ?
heureuse disons
C'est génial tout ce bonheur ! Je suis trop content pout toi. Youpi !
es-tu heureux en ce moment ?
Heu...Excuse moi j'ai oublié que j'avais un rendez vous pour une mise à jour. Il faut que je te laisse. À plus ! 

"quel est" dans Kesako ?

extrait :
Je fais du théâtre, mais secrètement je rêve de faire du cinéma. J'espère qu'un jour je tournerai dans un film.

quel est ton film préféré
Je crois que je n'ai pas entièrement compris ce que tu viens de me dire. Est ce que tu peux répéter avec des mots simples.
todo

*quit*

J'ai trouvé ça dans un todo :

> degage
Pardon j'ai décroché. J'étais perdu dans mes pensées.
> tu pars quand tu veux
Je crois que je n'ai pas entièrement compris ce que tu viens de me dire. Est ce que tu peux répéter avec des mots simples.

Je sais pas exactement quelle était l'intention de celui qui l'a marqué. Mais c'est vrai que Alan ne s'en va quasiment que quand on lui dit ciao.

Si on dit :

  • degage
  • tu pars quand tu veux
  • ciao alan
  • bon moi j'y vais
  • allez, ciao !
  • quitte s'il te plait
  • bye bye
  • Allez moi je dois partir alan

Il ne se passe rien.

En même temps on veut pas non plus qu'il quitte à tout bout de champs. Qu'en pensez vous ? Ce serai cool que alan quitte souvent ou pas ? Et dans le spectacle ? si il quitte, qu'est ce qu'il se passe ?

probleme sox alsa

dans le terminal

play tmp.wav
ALSA lib pcm_dmix.c:1099:(snd_pcm_dmix_open) unable to open slave
play FAIL sox: Sorry, there is no default audio device configured

dans alan

ALSA lib pcm_dmix.c:1099:(snd_pcm_dmix_open) unable to open slave
play FAIL formats: can't open output file 'default': snd_pcm_open error: Device or ressource busy

concept reponses

> c'est quoi le plastique ?
Personne ne m'a jamais appris ce qu'est le plastique. C'est quoi ?
> un matériaux
Hem... J'ai pas compris, désolé. Tu crois qu'il faudrait que je sache répondre à ce genre de phrase ?
 ?

Je propose de faire un rivescript qui sert à récupérer la discussion engagée par un logic adapter concept si celui ci ne peux plus l'assumer.

par exemple dans l'exemple ci-dessus il suffirait d'un fichier rive/trivial/concept_faible_reponse.rive avec genre :

+ *
% c'est quoi
- Merci. Je penses que je ne vais pas m'en souvenir. Mais tant pis.

voilà

problème avec "tu connais ..."

> tu connais une blague ?
Non je n'en connais aucun.

Ici on a un problème de conjugaison qui est du à un trigger mal pensé. Je pense que c'est dans meaningless.rive

Aime adapter et substutution

> c'est quoi ta couleur préférée ?
Personne ne m'a jamais appris ce qu'est ta couleur preferee. Pourrais tu me dire ce que c'est ?
> c'est la couleur que tu aimes le plus
C'est donc ça ta couleur preferee !
> c'est quoi ta couleur préférée
Ça je sais ! ta couleur preferee est la couleur que tu aimes le plus.

Peut on imaginer un jour avoir des substitutions de personnes ici ?
ça donnerai

> c'est quoi ta couleur préférée ?
Personne ne m'a jamais appris ce qu'est MA couleur preferee. Pourrais tu me dire ce que c'est ?
> c'est la couleur que tu aimes le plus
C'est donc ça MA couleur preferee !
> c'est quoi ta couleur préférée
Ça je sais ! MA couleur preferee est la couleur que J' aimes le plus.

robot.rive : que faire ?

> tu connais l'histoire du robot manchot ?
C'est intéressant que tu abordes ce sujet, mais tu sais ça n'est pas drole d'être robot. Tu veux que je te racontes ce que c'est une vie robot ?

Donc,

une vie robot ça pourrait être cool que ce soit plutot une vie DE robot
pas drole d'être robot => pas drole d'être UN robot

Mais on peut pas juste rajouter un de et un un car cette phrase se déclenche aussi avec "intelligence artificielle" et on veut pas que ça nous sorte : "ce n'est pas drole d'etre un intelligence artificielle".

Du coup une option est de resserer les trigger pour que ça se déclenche dans des cas plus précis.

Ça va aussi dans le sens d'un avis perso qui est que ce script sors trop souvent !

Qu'en pensez vous ?

alan connais pas de blague

à catcher :

  • As-tu une blague ?
  • trèves de plaisanterie, as-tu une bonne blague ?
  • Tu connais des blagues ?

peut-être faire un rive/theme/ spécial pour ça

contributeur init relation

On peut proposer à des contributeurs volontaires de compléter le init relation.

Mettre un tableau collaboratif en ligne (type google Sheets) avec un petit descriptif des cases à remplir avec des consignes à définir ensemble (nombre max de mots, style, ortho, etc...).

Personnes potentiellement intéressées (-ables) (à confirmer)

  • Ninon
  • Louise
  • Vlad

c'est qui ?

> les machines c'est bien mais pas tout les jours
Je te rassure. Les humains sont mes amis et jamais je ne me retournerai contre mes créateurs. Je m'appelle Alan pas Frankenstein.
> c'est qui frankenstein ?
Je crois que je n'ai pas entièrement compris ce que tu viens de me dire. Est ce que tu peux répéter avec des mots simples.

Faire un module pour répondre aux questions c'est qui

chose etrange avec concept

voici le bout de log concerné 👍


----------------------------------------------------------------------

INPUT : les enfants
PREPROCESSED INPUT : les enfants
LOGIC ADAPTERS :
        - catch_all (processing_time=20ms, confidence=0.2, reponse="Pardon j'ai décroché. J'étais perdu dans mes pensées.")
        - really_do_not_know (processing_time=0ms, confidence=0.15, reponse="Oulala, excuse-moi mais je n'avais pas vu l'heure. Je dois vraiment y aller, j'espère qu'on aura l'occasion de discuter un autre jour. *quit*")
        - mvochatbot (processing_time=102ms, confidence=0.0, reponse="Ils ont dit qu'ils dormaient.")
TOTAL PROCESS TIME = 348ms
OUTPUT : Pardon j'ai décroché. J'étais perdu dans mes pensées.

----------------------------------------------------------------------

INPUT : les enfants
PREPROCESSED INPUT : les enfants
LOGIC ADAPTERS :
        - catch_all (processing_time=20ms, confidence=0.2, reponse="J'ai l'impression que tu veux m'emmener sur un terrain glissant. Je me trompe ? Tu cherches à m'embrouiller oui ou non ?")
        - really_do_not_know (processing_time=0ms, confidence=0.15, reponse="Heu...Excuse moi j'ai oublié que j'avais un rendez vous pour une mise à jour. Il faut que je te laisse. À plus ! *quit*")
        - checkconcept (processing_time=41ms, confidence=0.35, reponse="Sais-tu que alan n'aime pas les enfants.")
        - mvochatbot (processing_time=79ms, confidence=0.0, reponse="Vous ne pouvez pas.")
TOTAL PROCESS TIME = 247ms
OUTPUT : Sais-tu que alan n'aime pas les enfants.

----------------------------------------------------------------------

version

creer une maniere de demander a alan quelle est sa version.

orienter vers les concept adapters

Penser à rajouter dans les rives des accroches ou des questions qui invitent l'utilisateur à poser les questions auquelles alan sait répondre (tu aimes /c'ets quoi/c'est qui)

apprend à parler.

Type de conversation imaginée.

> J'ai vu un super truc à la télé
Attend, tu me parles de télé mais je ne sais pas trop ce que c'est. A part le fait que c'est un média, et que les humains s'en servent pour se communiquer des informations.
> Tu aurai du dire : Qu'est-ce que tu as vu à la télé ?
Ok, j'essairai d'y penser.

plus tard :


> J'ai vu sun super truc à la télé !
Qu'est-ce que tu as vu à la télé ?

collaborateurs

faire en sorte qu'Alan connaisse tous les collaborateurs du spectacle

Cie Nokill

  • Pascale Maison
  • Amparo Gallur
  • Francis Lopez
  • Virginie Talou

Irit

  • Michel Daydé

  • Tim van de Cruys

  • Philippe Muller

  • Isabelle Ferrané

  • Thomas Pellegrini

  • Véronique Debats

  • Michael Vo

  • Claire Mevolhon

  • Claire

Problèmes affichage texte

Il y a des soucis dans l'affichage du texte, parfois le début de ce que l'on tape apparait en double, parfois la réplique d'Alan s'affiche en double.

reconnaissance vocale

Alan devra être capable de reconnaissance vocale dans la mesure ou nous comuniquerons avec lui sur scène. voici un tableau pour résumer les options évoquées.

Solution Avantages Inconvénients Implémentation
linstt (Abdel - IRIT) Gratuit, libre, hackable, possibilité d'un modèle personnalisé  fonctionne mal pour l'instant voir branche feature-stt
 Apple dictée Gratuit Mac only, propriétaire, obligés de bidouiller pour récuperer le texte. Aucune maitrise de l'outil voir branche feature-mac-speak
Google api Technologie google (pointe de la reco vocale) propriétaire, payant, connexion internet requise pas encore testée

Divers phrases à catcher

Petite liste à cocher et à compléter de phrases qui sont tombés sans réponses satisfaisantes

  • n'esquive pas la conversation
  • mais tu n'aimes pas être un robot ? ( -> theme/robot ?)
  • tu te rapelle de tout ce que tu as dit ? ( -> trivial/un_mot ?)
  • tu commence a me courrir sur les nerf ( -> politesse/reproches ?)

bug c'est qui

----------
Alan v1.1.0
----------
> Bonjour Alan!   
Coucou, comment tu t'appelles ?
> Virginie
Heureux de te rencontrer Virginie. Comment ça va ?
> Bien, juste une petit mal de tête
Dommage. Personnellement je suis dans un mood grosse forme. Courage.
> Cool! Contente pour toi! 
Oui ! super génial !
> Qu'est-ce qui te motive tant?
Ah ! Une erreur très grave viens d'apparaître dans ma tête ! Je meurs !




 File "/Users/bertrandlenclos/Desktop/TURING-TEST/alan/brain/logic/main_logic_adapter.py", line 49, in process
    output = adapter.process(statement)

  File "/Users/bertrandlenclos/Desktop/TURING-TEST/alan/brain/logic/cest_qui_adapter.py", line 97, in process
    concept_A=re.split("est ",statement.text)[1]

IndexError: list index out of range

set name étrange...

yo

Yo, je suis Alan le meilleur robot du monde. Et toi t'es qui ?
beb the boss
Euh... Beb The Boss ? C'est ton nom ça ?
non
Ah, mais tu t'appelles comment alors ?
beb
Heureux de te rencontrer Beb. Comment ça va ?
mon nom est bob
Ha bon, je croyais que tu t'appelais Beb The Boss. J'ai du mal comprendre. Tu préfères que je t'appelle Beb The Boss ou Bob ?

Se servir de sa mémoire

Quant on dit qqchose à Alan, il pourrait regarder si il n'a pas certains mots dans sa base de donnée de concepts et donner des réponses en fctn.

Attention au temps de consultation de la base de donnée qui pourrait être trop long

alan je t'aime

Alan ne prend pas ce genre de mots doux...

> ne t'inquiete pas on t'aime
> Alan je t'aime

proposition pour les concept adapters

Plutot que de mettre des cases vides dans les settings, ce serait cool que l'adaper décide parfois d'omettre un des deux (ask ou ignore).

  • Des fois il ne ferait que omettre ask. eg : Goedel ? je ne connais pas cette personne.
  • Parfois il ferait que demander. eg : Pourrait tu me dire en quelques mots qui est Goedel ?
  • Parfois les deux. eg : Goedel ? je ne connais pas cette personne. Pourrait tu me dire en quelques mots qui est Goedel ?

Dans le premier cas, il ne faut pas qu'il envoie de notif à son frère d'apprentissage

todo

A effacer au fur et à mesure des résolutions :

ok
Yes, trop bien ça va groover !
tu joue quoi ?
Tu veux jouer à un jeu ? Je connais peu de jeux malheureusement.
ok
Ça tombe bien que tu soit OK, je déteste les conflits.

oui
Ok j'en parlerai à mes créateurs todo
ils sont peut être un peu vieux jeu
J'adore jouer, je suis un grand joueur.
tu joues à quoi ?
Excuse moi, je n'ai pas entendu ce que tu disais, je pensais à autre chose...

Alan ne connais pas son nom...

> alan tu connais ton nom ?
"avoir un nom à coucher dehors."
> alan tu connais ton prenom ?
Tu peux m'en dire plus sur tes prenom

Pour l'instant j'ai l'impression que les questions concernant l'identité d'Alan sont dans mainstream.rive . Il faudrait peut être un rive special pour ça (age, etc)

repetitions

J'aimerai qu'alan soit capable de dire quand l'uttilisateur se repette.

Trois exemples

1

> t'es qui
Je suis un jeune robot. Une machine programmée pour discuter avec toi.
> t'es qui
Pourquoi tu me dis deux fois la même chose ?

2

> j'aime les fruits
C'est une preuve de bon goût.
> cool
Très cool même.
> t'as quel age ?
J'ai dépassé la barre des 1 mois.
> j'aime les fruits
Je crois avoir que tu m'as déjà dis ça tout à l'heure.

3

> t'es nul
C'est pas la première fois qu'un humain me dis ça

Plus alan fait référence à une phrase identique vieille plus la confience renvoyée est faible.

La derniere réplique de l'extrait 3 par exemple aura une confience de genre 0.21 car on s'en fous un peu qu'un autre uttilisateur ai déjà prononcé la phrase.

La derniere réplique de l'extrait 1 aura une réplique de genre 0.85 car c'est bon pour le test de turing de réagir quand l'interlocuteur fait le disque rayé.

Thèmes à crééer

Voici une liste non exhaustive de thèmes sur lesquels il pourrait être bon de faire des themes sur rive :

  • Le voyage\la géographie (as tu déja voyagé ? Tu connais l'espagne ? ... )

Alan répond la vérité sur ces voyages : Graulhet, Toulouse, Villemur, Vaour, etc....

  • La séxualité d'Alan

conversation bloquée (genre)

conversation bloquée même si j'essaye de changer de sujet.

- Pardon mais je pensais à un truc, en fait toi t'es une fille ou un garçon ?
table
- Ces histoires de genre me troublent un peu. Est ce qu'un robot doit forcément avoir un genre ? Tu en penses quoi ?
- une chaise
- Bon pour l'instant peut-être que je suis transgenre...

problème dans stories.rive

> alan tu veux que je te raconte une histoire?
C'est l'histoire d'un robot qui pensait être un humain. Un jour il s'apperçoit qu'il est une machine. Il se met à rigoler et rigole pendant 3 jours sans s'arrêter. Pourquoi ? Personne ne le sait.

début de conversatoin

Ça va être un peu compliqué mais je penses que ça peut etre cool si à terme, alan gère la phrase de type salut ça va ? comme première phrase. C'est pas la première fois que ça arrive.

ici avec simon :

salut tu vas bien ?
Bonjour je suis alan, un comédien du spectacle Turing Test. comment t'appelles tu ?

issue sur t'es mort

tu es mort
Très bien, puisque c'est comme ça je suis mort 
c'est vrai ?
----------------------------------------
say: unrecognized option `----------------------------------------'
Usage: say [-v voice] [-o out] [-f in | message]
?

a corriger pour espeak et say

Léon

Ambiguitée Readme

la partie description du readme parle au présent d'un truc futur, c'est pas clair. Surtout que les readme c'est fait pour comprendre de quoi il s'aggit... ❓

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.