Foro de elhacker.net

Programación => Scripting => Mensaje iniciado por: VicInFlames en 12 Enero 2014, 16:44 pm



Título: Proyecto Batch- Cleverbot
Publicado por: VicInFlames en 12 Enero 2014, 16:44 pm
Veamos compañeros,estoy intentando hacer una idea similar,al Cleverbot,el famoso "robot", se trataba de un programa que creaba una conversación a partir de frases de varias personas,enlazadas.. :huh:



Mi idea era Introducir frases al bat,que estas se guardarían en un .txt aparte,del que luego se consultan.

Para tener una conversación con sentido,las frases introducidas se guardan en líneas,según su relación,es decir,en el .txt quedaría así:


Hola ~ Que tal? ~ muy bien,y tú? ~ pues genial,no hay novedades ~
Adiós ~ hasta pronto ~ Nos vemos! ~ ;)


Estoy interesado en cómo puedo buscar desde el bat,partes de estas líneas,según sea necesario..
[ Yo digo "Hola" y el bat,lo relaciona con otra relación de la misma línea
(Hola ~ que tal?) por lo que me responderá " que tal?" o "bien y tú? ]

Como utilizo un "find" / "findstr" o "for" para conseguir buscar cierto segmento delimitado por un signo de puntuación,de la misma línea?



Muchas gracias :laugh:


Título: Re: Proyecto Batch- Cleverbot
Publicado por: fary en 12 Enero 2014, 17:52 pm
Hola, mi recomendación es que uses un lenguaje como Perl o Python para este tipo de cosas en vez de batch pero si estás interesado en hacerlo en batch mira información sobre for /f y delims.

un saludo.


Título: Re: Proyecto Batch- Cleverbot
Publicado por: Eleкtro en 12 Enero 2014, 18:06 pm
Batch es (muy) limitado en comparación con el resto de lenguajes (lenguajes de verdad), sobretodo por las escasas (inexistentes) herramientas de trabajo del lenguaje y la pobre velocidad.
Si reálmente quieres llevar una idea de estas proporciones entonces lo primero que debes hacer es olvidarte del retrasado Batch y aprender un lenguaje.

Por otro lado entiendo que lo que pretendes hacer es una "IA" muy básica sin algoritmos complejos, pero de todas formas el hecho de intentar hacer esto en Batch es una completa pérdida de tiempo, no te va a servir para nada reálmente, ni para aprender.

Segúramente habrán "buenos" ejemplos por Google, pero cualquier cosa parecida hecha en Batch es una pérdida de tiempo.

PD: Empecé a escribir un código para mostrarte un ejemplo hecho en Batch, pero me ví tan limitado en cada acción sin nisiquiera un triste Array o expresiones regulares (actuales) para poder calcular la frase con más coincidencias, que al final no terminé el código ...es una completa pérdida de tiempo pudiendo disponer de la capacidad de cualquier otro lenguaje.

Como utilizo un "find" / "findstr" o "for" para conseguir buscar cierto segmento delimitado por un signo de puntuación,de la misma línea?

FINDSTR soporta Expresiones regulares limitadas, leete la ayuda del comando en la consola, es el único commando que te puede servir de alguna manera dentro de lo poco que te va a servir (junto a un FOR para hacerle un split a la cadena).

Ejemplo de uso:

Código
  1. @Echo OFF
  2.  
  3. Set "String=Probando 123"
  4.  
  5. Echo "%String%" | FINDSTR "Probando.[0-9][0-9][0-9]" 1>NUL && (
  6. Set "Match=True"
  7. ) || (
  8. Set "Match=False"
  9. )
  10.  
  11. Echo Coincide: %Match%
  12.  
  13. Pause&Exit

Saludos


Título: Re: Proyecto Batch- Cleverbot
Publicado por: alehopio en 14 Enero 2014, 10:54 am
Una idea con respuesta aleatoria

http://social.technet.microsoft.com/Forums/en-US/ce7159e1-7638-4036-85c8-d5068a7b37c7/random-conversation-batch-file?forum=ITCG

buscando en google : chat bot batch

http://sourceforge.net/projects/chatbotscript/


Título: Re: Proyecto Batch- Cleverbot
Publicado por: AdeLax en 16 Enero 2014, 23:13 pm
Hola!!,

Yo tambien estuve una temporada interesado en las IA o chatbots, te puedo decir te que te olvides de Batch, Python para mi es lo que mejor me vino, te recomiendo que aprendas un poco python y luego te mires un modulo llamado AIML para trabajar con aiml's, (son archivos con preguntas y respuestas) encontraras a patadas aiml's por Internet echos por otros. Luego puedes añadirle una interfaz con Tkinter o otro modulo.
Si te lo curras le dará mil vueltas a Cleverbot!!  :D
y no es difícil...
     
Saludos!!!



Título: Re: Proyecto Batch- Cleverbot
Publicado por: daryo en 17 Enero 2014, 00:12 am
esos proyectos grandes en batch terminan siendo una pesadilla , recuerdo cuando hice un troyano de miles de lineas en batch y nno servia nada es muy caotico lento y limitado.

si mejor usa python o cualquier lenguaje de verdad