[Qualipso-a4] instalación y pruebas de las herramientas de NLP

Javier Pueyo jpueyo en gsyc.es
Lun Dic 7 14:08:15 CET 2009


El lun, 07-12-2009 a las 01:21 +0100, Jose Gato Luis escribió:
> ok, mañana pruebo. De todos modos, explícame un poco en que consiste la 
> función str_to_list, si aun así no me funciona, puedo tratar de buscar 
> una alternativa :)

La función str_to_list lo que hace es convertir una cadena de texto (a
la que se le supone un formato de lista) a una lista real. Como de un
script a otro estoy pasando cadenas de texto (que es lo único que me
permite pasar el módulo "subprocess") necesitaba un método rápido para
convertir esas cadenas a listas. Para ello str_to_list utiliza un eval
que (creo que) evalúa si la cadena que le pasas está bien formada y
devuelve la misma cadena como lista. Es decir, que yo le paso una str
como:

['issue', 'license']

y me la devuelve como una lista de verdad sobre la que se puede trabajar
normalmente.

Cuando a mí me salía el bug era porque la cadena que yo le pasaba desde
un script no estaba bien formada (es decir, que a eval no le parecía una
lista). Esto me ocurría cuando el item traía una backslash suelta que
freeling no procesaba bien y la cadena que me devolvía no era correcta.

En fin, que si en alguna parte del proceso se produce un error al
procesar el ítem, es muy probable que nos encontremos con este resultado
(quizá la cadena llega vacía si algún script falla). Tengo en el TODO
list mejorar el código para manejar los errores antes de llegar ahí.

Otra cosa que se me ocurre es que en un python en una máquina de 64 bits
eval funcione de otra manera, pero no tengo ni idea...

Para que no pierdas tu tiempo, si quieres puedes darme acceso a una
máquina donde esté instalado y trato de examinar el bug, porque aquí no
lo puedo reproducir ni usando el ejemplo que tú usas.

Un saludo,

Javier

> Un saludo,
> 
> El 04/12/09 15:40, Javier Pueyo escribió:
> > Perdona Jose, quería decir que los copiaras manualmente desde el SVN (es
> > decir sin usar svn). De ahí me he hecho yo un checkout limpio y el bug
> > no está en el código, pero mi temor es que yo haya hecho algo mal en mis
> > commits (estoy usando kdesvn) y no se te hayan propagado los cambios en
> > tus últimos updates. Ya sé que sería *muy* raro, pero es que no entiendo
> > por qué te aparece ese bug antiguo y a mí no...
> >
> > El vie, 04-12-2009 a las 15:22 +0100, Jose Gato Luis escribió:
> >>
> >> El 04/12/09 14:33, Javier Pueyo escribió:
> >>> Vaya!
> >>>
> >>> Me acabo de hacer un
> >>> svn checkout
> >>> https://svn.libresoft.es/svn/qualipso/private/work/A4/3rdIteration/src/jpueyo
> >>>
> >>> limpio en un nuevo directorio y me funciona sin problemas. Podría pensar
> >>> que es algo que tengo en mi máquina que evita el bug, pero es que ese
> >>> bug sí me salía hace días en mi propia máquina y conseguí corregirlo
> >>> modificando los ficheros:
> >>>
> >>> jpueyo/floss_nlp/NLP_POST/floss_item_classifier.py
> >>> jpueyo/floss_nlp/NLP_POST/floss_item_info_extractor.py
> >>>
> >>> ¿tienes posibilidad de copiarlos a mano a tu máquina desde el svn, no
> >>> vaya a ser que yo haya hecho algo mal en los commits y no te propague
> >>> esos cambios?
> >>
> >> pero, ¿desde dónde lo copio? No lo entiendo muy bien...
> >>
> >>>
> >>>
> >>>
> >>> El vie, 04-12-2009 a las 14:07 +0100, Jose Gato Luis escribió:
> >>>> Sigue fallándome :(
> >>>>
> >>>> python2.5 sample.py
> >>>> Traceback (most recent call last):
> >>>>      File "sample.py", line 105, in<module>
> >>>>        only_topics = NLP.getItemTopics(item0, is_mail=True)
> >>>>      File
> >>>> "/home/jgato/proyectos/Qualipso/A4/svn/qualipso/private/work/A4/3rdIteration/src/jpueyo/floss_nlp/NLP_Process.py",
> >>>> line 116, in getItemTopics
> >>>>        topics = self.getItemTopicsEntities(doc_item, is_mail, only_topics)
> >>>>      File
> >>>> "/home/jgato/proyectos/Qualipso/A4/svn/qualipso/private/work/A4/3rdIteration/src/jpueyo/floss_nlp/NLP_Process.py",
> >>>> line 107, in getItemTopicsEntities
> >>>>        topics = self.str_to_list(topics_entities)
> >>>>      File
> >>>> "/home/jgato/proyectos/Qualipso/A4/svn/qualipso/private/work/A4/3rdIteration/src/jpueyo/floss_nlp/NLP_Process.py",
> >>>> line 143, in str_to_list
> >>>>        my_list = eval(my_string)
> >>>>      File "<string>", line 1
> >>>>        Traceback (most recent call last):
> >>>>                             ^
> >>>> SyntaxError: invalid syntax
> >>>>
> >>>>
> >>>>
> >>>> El 04/12/09 14:02, Javier Pueyo escribió:
> >>>>> Hola,
> >>>>>
> >>>>> Pues ese es uno de los bugs que corregí ayer y el arreglo debería estar
> >>>>> en la última revisión del svn (hice un commit ayer). En mi copia local
> >>>>> al menos funciona sin problemas... ¿Puedes comprobar si funciona ahora?
> >>>>> Quizá había hecho algo mal y no se ha completa el commit. He vuelto a
> >>>>> hacerlo.
> >>>>>
> >>>>> Un saludo,
> >>>>>
> >>>>> Javier
> >>>>>
> >>>>> El vie, 04-12-2009 a las 11:19 +0100, Jose Gato Luis escribió:
> >>>>>> Buenas,
> >>>>>>
> >>>>>> para no marear tantos correos, en este, voy a ir contando los problemas
> >>>>>> a los que me enfrente:
> >>>>>>
> >>>>>>      * He instalado Freeling (he bajado la versión para máquinas de 64bits)
> >>>>>>      * He añadido las modificaciones de NLTK
> >>>>>>      * Cuando me dispongo a hacer una prueba sencilla:
> >>>>>>
> >>>>>> ===
> >>>>>> from floss_nlp.NLP_Process import NLP_Process
> >>>>>>
> >>>>>> NLP = NLP_Process()
> >>>>>>
> >>>>>> item0 = '''I saw Richard Stallman and Linus Torvalds filed 30765, which
> >>>>>> is a GPL_3 license bug and report. The file is license.txt. '''
> >>>>>>
> >>>>>> only_topics = NLP.getItemTopics(item0)
> >>>>>> print str (only_topics)
> >>>>>>
> >>>>>> ====
> >>>>>>
> >>>>>> tengo el siguiente error:
> >>>>>>
> >>>>>> Traceback (most recent call last):
> >>>>>>       File "test.py", line 7, in<module>
> >>>>>>         only_topics = NLP.getItemTopics(item0)
> >>>>>>       File
> >>>>>> "/home/jgato/proyectos/Qualipso/A4/svn/qualipso/private/work/A4/3rdIteration/src/jpueyo/floss_nlp/NLP_Process.py",
> >>>>>> line 116, in getItemTopics
> >>>>>>         topics = self.getItemTopicsEntities(doc_item, is_mail, only_topics)
> >>>>>>       File
> >>>>>> "/home/jgato/proyectos/Qualipso/A4/svn/qualipso/private/work/A4/3rdIteration/src/jpueyo/floss_nlp/NLP_Process.py",
> >>>>>> line 107, in getItemTopicsEntities
> >>>>>>         topics = self.str_to_list(topics_entities)
> >>>>>>       File
> >>>>>> "/home/jgato/proyectos/Qualipso/A4/svn/qualipso/private/work/A4/3rdIteration/src/jpueyo/floss_nlp/NLP_Process.py",
> >>>>>> line 143, in str_to_list
> >>>>>>         my_list = eval(my_string)
> >>>>>>       File "<string>", line 1
> >>>>>>         Traceback (most recent call last):
> >>>>>>
> >>>>>> Saludos,
> >>>>>>
> >>>>>>
> >>>>>
> >>>>> _______________________________________________
> >>>>> Qualipso-a4 mailing list
> >>>>> Qualipso-a4 en gsyc.escet.urjc.es
> >>>>> http://gsyc.escet.urjc.es/cgi-bin/mailman/listinfo/qualipso-a4
> >>>>
> >>>
> >>> _______________________________________________
> >>> Qualipso-a4 mailing list
> >>> Qualipso-a4 en gsyc.escet.urjc.es
> >>> http://gsyc.escet.urjc.es/cgi-bin/mailman/listinfo/qualipso-a4
> >>
> >
> > _______________________________________________
> > Qualipso-a4 mailing list
> > Qualipso-a4 en gsyc.escet.urjc.es
> > http://gsyc.escet.urjc.es/cgi-bin/mailman/listinfo/qualipso-a4
> 



More information about the Qualipso-a4 mailing list