analyse syntaxique

B

bb19

Invité
Bonjour,

Connaissez vous des solutions d'analyse syntaxiques ? Désolé si je n'ai pas le vocabulaire des techniciens, j'ai une problématique sur un projet.
Voilà, je cherche à savoir si il est possible qu'un internaute puisse obtenir des infos en faisant uen requête, laquelle requête sera analysée non pas mot à mot mais en tant qu'éléments indissociables.
Par exemple, est-il possible ou est-ce que celà existe déjà, des solutions permettant de poser une question et d'obtenir une réponse sous forme de contenu et non pas d'url sur le net.
Si ce n'est pas assez clair, je vous apporterait tte info complémentaire, merci.

zen.gif
 
cux221 a dit:
Ce que je connais des analyseurs syntaxiques, c'est lex et yacc, mais je sais pas si ça correspond à ta demande.
confused.gif

Hi,

En fait comme je te le disais je ne suis pas technicien, j'ai besoin de savoir si il est possible qu'un outil, un script traite une question pour en faire une requête.
Par exemple, si je demande à un site qui est une horloge:
"quelle heure il est ce matin à Bombay, je dois m'y rendre ?" existe-t-il uen solution logicielle ou est-ce possible de développer un outil d'analyse permettant d'identifier la question dans son intégralité, stocker la question dans une BDD ainsi que la réponse.

Je m'excuse de ne pas être plus clair
wink.gif
 
bb19 a dit:
En fait comme je te le disais je ne suis pas technicien, j'ai besoin de savoir si il est possible qu'un outil, un script traite une question pour en faire une requête.

Tu ne trouves pas que tu demandes qch de traitement de langage naturel ? Là, ça sort non seulement du cadre du développement sur Mac, mais du développement tout court
crazy.gif


D'une manière générale, la réponse à ta question est définivement non.

Cela étant dit, il n'est pas impossible qu'il existe de telles applications pour un domaine très spécifiques.
 
cygwin a dit:
Tu ne trouves pas que tu demandes qch de traitement de langage naturel ? Là, ça sort non seulement du cadre du développement sur Mac, mais du développement tout court
crazy.gif


D'une manière générale, la réponse à ta question est définivement non.

Cela étant dit, il n'est pas impossible qu'il existe de telles applications pour un domaine très spécifiques.

ok merci de ta réponse, c exactement ça mais j'espère que cette impossibilité est définitive.
Les outils que tu évoquais offrent quelles possibilités alors ?
zen.gif
 
Sinon, ecrire un programme en prolog en définissant une grammaire pour reconnaitre le plus de terme possible, mais c'est plus du domaine de la recherche.
crazy.gif
 
Si t'arrives à nous écrire la grammaire française en une grammaire BNF de type LL(1), puis ensuite nous fournir une syntaxe abstraite du français... peut-être que ça sera possible
laugh.gif
tongue.gif
crazy.gif

 
molgow a dit:
Si t'arrives à nous écrire la grammaire française en une grammaire BNF de type LL(1), puis ensuite nous fournir une syntaxe abstraite du français... peut-être que ça sera possible
laugh.gif
tongue.gif
crazy.gif

A te lire, je me demande déjà si on parle le même français ou non
wink.gif

Pour l'instant, je développe un cahier des charges pour un moteur de recherche d'informations à forte valeur ajoutée pour des internautes ou non internautes qui n'ont pas le temps de faire des recherches sur des FAQ, forums spécifiques etc. Ah oui parce que la contrainte supplémentaire est que celà soit multicanal, téléphonie mobile, postes pc...
Le délai de réponse pour construire une réponse à valeur ajoutée est le principal frein alors je pensais metre en place une BDD qui historiserait l'ensemble des réponses fournies et des réponses à des questions pré-établies d'après étude des FAQ, forums etc etc pour que la question posée puisse trouver une réponse très vite. Evidemment, au moment de la mise en prod. la BDD serait insuffisamment renseigné mais il y aurait montée en puissance au fil de l'exploitation.
Plusieurs possibilités donc:
- Soit faire un moteur de recherche type booléens mais il est probable que la question à valeur ajoutée ne trouve pas réponse à son pied et je ne répond pas à la charge d'une absence de tri du côté utilisateur

- Soit identifier une méthode permettant de créer des relations entre une question formulée en langage courant et une réponse formulée en langage courant et les deux étant prises en bloc.
Par exemple:
Question: Je souhaite trouver un mécanisme ETA7030 chez un fournisseur asiatique proche de tel fournisseur ?
Réponse: Monsieur, vous avez un fournisseur de tel mécanisme en chine près de la route de tienan men...

La typologie du réseau sera celle d'un call center virtuel, chaque expert susceptible de répondre étant sur son lieu de travail, à domicile anyway...

Vous avez toutes les billes,

C quoi LL1 ?

Merci beaucoup

zen.gif
 
Euh.. prends pas au sérieux mon message précédent
wink.gif
laugh.gif


Tu peux imaginer faire un programme qui reconnaîtrait un certain nombre de phrases types du style : "je cherche" + objet + "chez" + fournisseur. Mais reconnaître n'importe quelle phrase écrite en français, c'est inimaginable.

Le plus simple est donc de faire comme tous les moteurs de recherche qui proposent des champs pour inscrire des mots utilisés comme critères de recherche. Parce que proposer à l'utiliser de pouvoir entrer une phrase type pour rechercher seulement qqs mots, ça ne sert pas à grand chose, et tu risques de le perturber (il peut croire que ton moteur est super intelligent et ne comprendra pas qu'il n'est pas capable de comprendre la requete "file moi une page sur blabla..")

Juste pour l'info, une grammaire de type LL1 est une grammaire analysable par la gauche avec 1 symbole lu en avance. On crée facilement des analyseurs syntaxiques par descente récursive avec des grammaires de ce type. Voilà.. mais oublie ça pour ton problème
wink.gif
smile.gif
 
molgow a dit:
Euh.. prends pas au sérieux mon message précédent
wink.gif
laugh.gif


Tu peux imaginer faire un programme qui reconnaîtrait un certain nombre de phrases types du style : "je cherche" + objet + "chez" + fournisseur. Mais reconnaître n'importe quelle phrase écrite en français, c'est inimaginable.

Le plus simple est donc de faire comme tous les moteurs de recherche qui proposent des champs pour inscrire des mots utilisés comme critères de recherche. Parce que proposer à l'utiliser de pouvoir entrer une phrase type pour rechercher seulement qqs mots, ça ne sert pas à grand chose, et tu risques de le perturber (il peut croire que ton moteur est super intelligent et ne comprendra pas qu'il n'est pas capable de comprendre la requete "file moi une page sur blabla..")

Juste pour l'info, une grammaire de type LL1 est une grammaire analysable par la gauche avec 1 symbole lu en avance. On crée facilement des analyseurs syntaxiques par descente récursive avec des grammaires de ce type. Voilà.. mais oublie ça pour ton problème
wink.gif
smile.gif

;-)
Merci pour l'info s/ LL1
Tu as raison, si on ne peut établir le programme que j'envisageais, l'internaute ne comprendra pas, je vais travailler sur l'idée d'agents de traitement des questions en middle Office pour router les questions, faire les requêtes et transmettre les réponses.

Merci beaucoup, je vais suivre vos discussions pour être un peu moins flou s/ des problèmes de développement.

@pluche
zen.gif
 
Comme mentioné plus haut, lex et yacc sont bien, mais il existe encore mieux : Flex et Bison.
Bonne chance, c'est pas simple au début...