반응형

[Chatbot] 20170227 파이썬으로 챗봇_만들기





...

반응형
반응형

[Chatbot] 챗봇 개발을 위한 네이버 랩스 api





...

반응형
반응형

[ChatBot] 마이크로소프트 봇 프레임워크로 만드는 인공지능 봇






...

반응형
반응형

30분 안에 챗봇 만들기 

- #1 https://brunch.co.kr/@chris-song/28



lang : python

Bot Platform : Bot Framework(https://dev.botframework.com/) or api.ai(https://api.ai/) or (https://chatfuel.com/)

Messenger : Facebook Messenger, Telegram, Slack, 아무거나 


- #2 https://brunch.co.kr/@chris-song/29  - https://youtu.be/OPIE74jg7S8


사용해볼 프레임워크 

- Bot Framework

- Cognitive Service API


개발 언어 

- Python


Python 라이브러리

- microsoftbotframework


API 서버

- Heroku App


선행 조건(Prerequisites)

- Heroku 계정

- github 계정

- Azure 계정

- Facebook 계정

 

...    

반응형
반응형

스레드(thread)는 어떠한 프로그램 내에서, 특히 프로세스 내에서 실행되는 흐름의 단위를 말한다. 일반적으로 한 프로그램은 하나의 스레드를 가지고 있지만, 프로그램 환경에 따라 둘 이상의 스레드를 동시에 실행할 수 있다. 이러한 실행 방식을 멀티스레드(multithread)라고 한다.


멀티스레딩(multithreading) 컴퓨터는 여러 개의 스레드를 효과적으로 실행할 수 있는 하드웨어 지원을 갖추고 있다. 이는 스레드가 모두 같은 주소 공간에서 동작하여 하나의 CPU 캐시 공유 집합과 하나의 변환 색인 버퍼 (TLB)만 있는 멀티프로세서 시스템 (멀티 코어 시스템)과는 구별한다. 그러므로 멀티스레딩은 프로그램 안에서 병렬 처리의 이점을 맛볼 수 있지만 멀티프로세싱 시스템은 여러 개의 프로그램들을 병렬로 처리할 수 있다. 멀티프로세싱 시스템이 여러 개의 완전한 처리 장치들을 포함하는 반면 멀티스레딩은 스레드 수준뿐 아니라 명령어 수준의 병렬 처리에까지 신경을 쓰면서 하나의 코어에 대한 이용성을 증가하는 것에 초점을 두고 있다.


챗봇에서 웹으로 접속 했을때, 

node.js 로 챗팅 만들었을때와 다르게 바로 멀티쓰레드 진행됨. 

실행한 웹 페이지마다 다른 응답을 보여주었다. 


어떻게 멀티쓰레드가 되는건지원... 


https://github.com/bwilcox-1234/ChatScript/blob/master/SRC/evserver/ev.pod



...

반응형
반응형

챗봇 설계시 고려 사항  http://story.pxd.co.kr/m/1250

챗봇의 기능을 명확히 인지할 수 있어야 한다.

챗봇을 통한 정보 탐색은 대화 흐름에 따라 이루어지기 때문에 시작 과정이 매우 중요합니다. 챗봇을 통한 정보 탐색이 편리하더라도 챗봇이 제공하는 기능을 사용자가 인지하지 못하면 챗봇의 정보 탐색 자체가 이루어지지 않을 수 있습니다. 이번에 설계한 챗봇은 챗봇 정보 탐색 흐름을 체험할 수 있도록 첫 진입 시 챗봇 안내에 따라 기능을 직접 사용하는 체험 튜토리얼을 제공했습니다.

정보 탐색 과정에서 챗봇과의 대화 흐름이 끊기지 않도록 언제든 탐색 과정 중 새로운 정보를 탐색할 수 있는 구조로 설계했습니다. 재진입 시 튜토리얼 없이 챗봇 대화가 어렵지 않도록 키워드를 추천하여 챗봇이 전달할 정보에 대한 가이드라인을 제공합니다.


사용자가 예측한 답변을 제공해야 한다.

동문서답하는 사람과 대화를 지속하기 어렵듯 챗봇과의 대화를 지속시키려면  챗봇은 사용자의 질문에 맞는 적절한 대답을 해야 합니다. 사용자가 채팅창에 키워드를 입력하고 나서 기대한 대답을 계속 얻지 못하면 그 챗봇과는 대화를 지속하기 어려울 것입니다. 응답 가능 범위가 좁은 우리 챗봇이 바보처럼 느껴지지 않게 챗봇이 응답 가능한 영역에서 키워드를 입력하도록 설계했습니다. 그리고 챗봇 대화 시 특정 정보 탐색을 위한 입력 영역을 제공하여 특정 범위 내의 키워드 입력을 유도했습니다.


기존의 정보 탐색 과정보다 편리해야 한다.

요약 정보 > 상세 정보 확인 과정에서 상세 정보 확인 시 사용자가 반복적으로 입력해야 하는 키워드가 있었습니다. 화면 진입보다 정보 탐색 과정이 편리하려면 반복적으로 수행해야 하는 키워드 입력을 줄여야 했습니다. 처음 요약 정보를 확인할 키워드는 사용자가 직접 입력하되, 상세 정보를 보고 싶은 항목들은 선택지를 통해 확인하도록 설계했습니다. 또, 한 화면에서 사용자가 원하는 정보를 한눈에 확인할 수 있도록 제공되는 선택지의 영역을 최소화했습니다.

반응형
반응형

Teachers Create what they Experience | Katie Martin | TEDxElCajonSalon



교수 및 학습에 관한 공유 된 비전을 창출하십시오. 학습을 프로세스가 아닌 이벤트로 사용하기. 연습, 트레일 및 실제 활동을 통한 진정한 학습을 ​​허용하십시오. 오늘날 세계와 함께 진화하고 열린 교육 리소스를 통해 # 오픈하십시오.


Katie Martin은 USD의 모바일 기술 학습 센터에서 전문 학습 담당 이사입니다. 그녀는 리더십 및 교육 과학 학교에서 대학원 과정을 가르치고 다양한 K-12 학교의 교사 및 행정관과 협력합니다. 지역 및 전국 교육구와의 파트너십을 통해 그녀는 교육자를위한 맞춤식 전문 학습을 용이하게하는 시스템을 개발하는 데 도움을주었습니다. 마틴 박사는 지도자와 협력하여 모든 학생들이 현재와 미래의 성공을위한 지식과 기술을 갖추도록 학습 및 혁신 문화를 창출합니다.

USD에 합류하기 전에 Katie는 O'ahu의 Leeward Coast에서 하와이에서 10 년을 보냈습니다. 그녀는 중학교 영어 어학을 가르치고 교육 코치였습니다. 그녀는 효과적인 선생님을 지원하고 유지하기위한 새로운 교사 선생님이자 지구 프로그램 코디네이터로 계속 활동했습니다.


이 강연은 TED 컨퍼런스 형식을 사용하는 TEDx 행사에서 주어졌지만 지역 사회에서 독립적으로 조직되었습니다. 자세한 내용은 http://ted.com/tedx에서 확인하십시오.



...

반응형
반응형

학습 경험을 풍부하게하는 11 가지 방법


자신을보다 효과적이고 견고하게 배우기 위해 어떻게 가르 칠 수 있는지 생각 해본 적이 있습니까? 성인은 아이들과 다르게 배웁니다. 우리 자신의 개인적인 발달을 효과적으로 진전시키기 위해서는 우리가 어른으로서 실제로 어떻게 배우는지를 이해하는 것이 중요합니다. 그런 다음 개인적인 기술 및 지식 개발 목표를 달성하는 데 도움이되는 경험을 식별, 추구 또는 만들 수 있습니다. 우리의 개인적인 성장과 궁극적으로 번창하고 성취 된 능력은 우리가해야 할 때 배우고 자립하는 학습자의 능력에 달려 있습니다.

성인들이 배우는 전략의 집합은 주로 말콤 노울 스 ( Malcolm Knowles)의 연구와 이론을 바탕으로 한 인과 학습이라고 합니다. 교육학은 아이들이 배우는 과정이며, 10 대 후반의 어딘가에서 우리의 학습 방향은 하나에서 다른 방향으로 전환됩니다.

자녀들이 새로운 소프트웨어 프로그램을 가르치는 것을 본 적이 있습니까? 대부분은 그들이 볼 수있는 모든 것을 클릭하기 시작합니다. 그 링크는 링크 일 수도 있고 뭔가를 만들 수도 있습니다. 운이나 그 이유가없는 것처럼 보일 수도 있습니다. 종종 순수한 호기심에 이끌려 간다. 그들은 탐구하고 목표를 설정하지 않고 상황을 파악합니다. 그들의 접근 방식은 큰 폭을 가지고 있지만 깊이가 부족할 수 있습니다.

반면에 어른들은 소프트웨어 사용 방법과 목적을 염두에두고 무엇인가를 가르칩니다. 그들은 일반적으로 작업을 수행하거나 목표를 달성하기위한 특정 애플리케이션에 관심이 있습니다. 성인은 즉각적인 사용법을 배우려고하므로 초점이 좁습니다. 그들은 선택된 응용 프로그램을 잘 배우기를 원하며 일반적 으로 다른 잠재적 인 학습 기회에 집중 하지 않습니다 . 예를 들어, 필자는 Word와 PowerPoint의 특정 부분을 매우 잘 알고 있으며 필요하지 않기 때문에 다른 부분도 전혀 아는 것이 아니거나 내 작업에서 어떻게 유용 할 수 있는지 알지 못합니다. 아이의 태도는 종종 폭 넓은 탐험 과정을 따르며 종종 사용하지 않을 것들을 배우려고합니다. 그것은 성인과 아이들이 어떻게 서로 다른지를 배우는 것의 차이점 중 하나입니다.

  • 성인은 무언가를 배우기위한 목적을 이해할 필요가 있습니다. 아이들은 보통 나이가들 때까지 질문하지 않습니다.
  • 성인 학습은 문제 또는 과제 중심입니다. 어린이 학습은 주로 콘텐츠 중심입니다.
  • 성인은 내재적 동기 또는 내적 동기에 효과적으로 반응합니다. 아이들은 외부의 동기 부여 또는 인센티브에 더 많은 반응을 보입니다.
  • 시행 착오를 포함한 경험은 성인 학습의 중요한 구성 요소입니다.

이 모든 것을 염두에두고 학습 한 경험을 어떻게 풍성하게합니까? 다음은 10 가지 제안 사항입니다.

  1. 왜 당신이 마스터하고 싶은지를 배우는 이유를 아십시오.
  2. 지식이나 기술 습득의 이점을 이해하십시오.
  3. 자신의 학습에 대한 책임과 책임을진다. 프로세스를 계획하십시오.
  4. 강점, 과거 학습 및 이전 학습에서 학습 목표를 구성하는 방법을 식별하십시오.
  5. 학습 경험을 구조화하여 본질적인 동기 부여 필요성과 연관 시키십시오. 이것은 과제 또는 학습 목표를 한마디 크기의 조각으로 깨고 이전 단계에서 역량을 개발할 때 연속적으로 다루게됩니다. 중간 또는 증분 성공은 대개 본질적으로 강화됩니다. 파트너와 함께 일하는 것이 풍성하고 강화되어 있음을 알 수 있습니다. 특히 함께 일하기를 좋아하고 강점이 서로 보완하는 경우 특히 그렇습니다.
  6. 프로세스를 재미 있고 즐겁게 만드십시오.
  7. 새로운 기술과 아이디어로 실험 해보십시오. 잘 작동하는 것과 그렇지 않은 것을 발견하십시오. 지속적으로 향상 시키려고 노력하십시오.
  8. 안전한 기회 또는 학습 경험을 확인하십시오. 따라서 실수를하거나 좌절을 당하면 결과는 가능한 한 중요하지 않습니다. 아이디어는 실제로 중요 할 때 적용하기 전에 신흥 기술과 지식을 시험 적으로 테스트하는 것입니다.
  9. 실수가 발생한 방법을 평가하고 개선 할 특정 단계를 확인하십시오. 외부 관점에서 피드백과 코칭을 구하십시오.
  10. 융통성을 유지하십시오. 미드 코스 교정을 위해 준비하고 개방하십시오. 당신의 틈새 시장을 찾아 볼테르 (Voltaire)를 의역 할 때, 완벽 추구는 선의적일 수 있으며 불필요한 좌절을 가져올 수 있습니다.
  11. 혼자서라도 성공을 축하하십시오.

배우고 성장하는 재미 있고, 번성하고 충만한 삶을 이끌어가는 새로운 방법을 모색하십시오.




...

반응형

+ Recent posts