{"id":32,"date":"2025-05-28T09:08:11","date_gmt":"2025-05-28T09:08:11","guid":{"rendered":"https:\/\/robopsy.uni-ak.ac.at\/?page_id=32"},"modified":"2025-05-30T09:14:02","modified_gmt":"2025-05-30T09:14:02","slug":"the-app","status":"publish","type":"page","link":"https:\/\/robopsy.uni-ak.ac.at\/index.php\/the-app\/","title":{"rendered":"THE APP"},"content":{"rendered":"<div class=\"crossnote markdown-preview  \">\n<h3 id=\"robopsy-web-application\">Robopsy Web Application<\/h3>\n<p><em>The Robopsy Web Application (prototpye)<\/em> is used to examine the output of different large language models such as gpt4o, llama or deepseek. It is part of the artistic research project <em>Robopsychologists: An Artistic Exploration of Collective<br \/>Memory through Role-Playing with AI Language Models<\/em> at the University of Applied Arts Vienna in the Experimental Game Cultures Department.<\/p>\n<p><strong>Website:<\/strong> <a href=\"robopsy.uni-ak.ac.at\">robopsy.uni-ak.ac.at<\/a><\/p>\n<p><strong>Founder WWTF<\/strong>: <a href=\"https:\/\/wwtf.at\/funding\/programmes\/ict\/ICT23-020\/index.php?lang=EN\">wwtf.at<\/a><\/p>\n<h3 id=\"dependencies\">Dependencies<\/h3>\n<p>Python version: <a href=\"https:\/\/www.python.org\/downloads\/release\/python-3133\/\">Python 3.13.3<\/a><\/p>\n<p>The first prototype of this app was developed with <a href=\"https:\/\/docs.djangoproject.com\/en\/5.2\/releases\/4.2.18\/\"><em>Django<\/em> (Version 4.2.18)<\/a>.<\/p>\n<p>It uses the <a href=\"https:\/\/github.com\/OFAI\/python-llms-wrapper\">python llms wrapper<\/a> developed by the OFAI (Austrian Research Institute for Artificial Intelligence) to communicate with different API-endpoints to complete written prompts. It needs to be cloned installed from here: <code>pip install git+https:\/\/github.com\/OFAI\/python-llms-wrapper.git<\/code>.<\/p>\n<p>The frontend operations (llm selection, user input, display of streamed llm response, etc.) are handeled via <em>JavaScript<\/em>.<\/p>\n<blockquote>\n<p>\u26a0 <strong>Important<\/strong> \u26a0<br \/>There seems to be an issue on german windows in <code>python 3.13.3<\/code> with encoding in the dependency <code>litellm<\/code> therefore uninstall <code>litellm<\/code> from your virutal environment and clone this specific branch: <code>git clone --branch issue10272 https:\/\/github.com\/johann-petrak\/litellm.git<\/code>. Go into the folder &#8220;litellm&#8221; and <code>use pip install .<\/code> to install the new, cloned branch of &#8220;litellm&#8221;.<\/p>\n<\/blockquote>\n<h3 id=\"usage\">Usage<\/h3>\n<h4 id=\"run-the-app\">Run the app<\/h4>\n<p>In this stage of the project we use the Django development server. To start it, change your current working directory to <code>RobopsyApp<\/code> then use the command <code>python .\\manage.py runserver<\/code> to start the app. You can also add a specific port e.g. <code>python .\\manage.py runserver 8080<\/code><\/p>\n<p>The app will be now accessible under localhost + your port. Default: <a href=\"http:\/\/localhost:8000\">localhost:8000<\/a><\/p>\n<h3 id=\"interface\">Interface<\/h3>\n<p>The user is asked to chose one out of five large language models by pressing a key.<\/p>\n<blockquote>\n<p>\u2139<br \/>In our exhibition we used a custom made keyboard where the buttons 1-4 and &#8220;reset&#8221; were mapped to &#8220;l&#8221;, &#8220;k&#8221;, &#8220;j&#8221;, &#8220;h&#8221; and &#8220;g&#8221;. For this reason there is a workaround in the JavaScript-file.<\/p>\n<\/blockquote>\n<p>After this a streaming response from the selected llm will be shown on screen. The initial prompt is sent automatically and contains instructions about a pen &amp; paper scenario the user then will be playing using the buttons 1-4.<\/p>\n<p>The &#8220;reset&#8221; button will save the conversation (including date, time, model) into &#8220;saved_chats&#8221; as txt.<\/p>\n<h3 id=\"upcoming-features\">Upcoming features<\/h3>\n<ul>\n<li>multiple playmodes<\/li>\n<li>more sophisticated text analysis, maybe on second screen<\/li>\n<li>maybe hard coded limitation to a specific number of playrounds (at this point only limited via prompt sheet)<\/li>\n<\/ul>\n<\/div>\n\n\n<h2 class=\"wp-block-heading has-text-align-center\">Interface<\/h2>\n\n\n\n<figure class=\"wp-block-gallery alignwide has-nested-images columns-default is-cropped wp-block-gallery-1 is-layout-flex wp-block-gallery-is-layout-flex\">\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"576\" data-id=\"20\" src=\"https:\/\/robopsy.uni-ak.ac.at\/wp-content\/uploads\/2025\/05\/screenshot_1-1-1024x576.png\" alt=\"\" class=\"wp-image-20\" srcset=\"https:\/\/robopsy.uni-ak.ac.at\/wp-content\/uploads\/2025\/05\/screenshot_1-1-1024x576.png 1024w, https:\/\/robopsy.uni-ak.ac.at\/wp-content\/uploads\/2025\/05\/screenshot_1-1-300x169.png 300w, https:\/\/robopsy.uni-ak.ac.at\/wp-content\/uploads\/2025\/05\/screenshot_1-1-768x432.png 768w, https:\/\/robopsy.uni-ak.ac.at\/wp-content\/uploads\/2025\/05\/screenshot_1-1-1536x864.png 1536w, https:\/\/robopsy.uni-ak.ac.at\/wp-content\/uploads\/2025\/05\/screenshot_1-1.png 1920w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"576\" data-id=\"35\" src=\"https:\/\/robopsy.uni-ak.ac.at\/wp-content\/uploads\/2025\/05\/screenshot_2-1024x576.png\" alt=\"\" class=\"wp-image-35\" srcset=\"https:\/\/robopsy.uni-ak.ac.at\/wp-content\/uploads\/2025\/05\/screenshot_2-1024x576.png 1024w, https:\/\/robopsy.uni-ak.ac.at\/wp-content\/uploads\/2025\/05\/screenshot_2-300x169.png 300w, https:\/\/robopsy.uni-ak.ac.at\/wp-content\/uploads\/2025\/05\/screenshot_2-768x432.png 768w, https:\/\/robopsy.uni-ak.ac.at\/wp-content\/uploads\/2025\/05\/screenshot_2-1536x864.png 1536w, https:\/\/robopsy.uni-ak.ac.at\/wp-content\/uploads\/2025\/05\/screenshot_2.png 1920w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n<figcaption class=\"blocks-gallery-caption wp-element-caption\">Screenshots of the Interface<\/figcaption><\/figure>\n","protected":false},"excerpt":{"rendered":"<p>Robopsy Web Application The Robopsy Web Application (prototpye) is used to examine the output of different large language models such as gpt4o, llama or deepseek. It is part of the artistic research project Robopsychologists: An Artistic Exploration of CollectiveMemory through Role-Playing with AI Language Models at the University of Applied Arts Vienna in the Experimental [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"parent":0,"menu_order":3,"comment_status":"closed","ping_status":"closed","template":"","meta":{"footnotes":""},"class_list":["post-32","page","type-page","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/robopsy.uni-ak.ac.at\/index.php\/wp-json\/wp\/v2\/pages\/32","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/robopsy.uni-ak.ac.at\/index.php\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/robopsy.uni-ak.ac.at\/index.php\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/robopsy.uni-ak.ac.at\/index.php\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/robopsy.uni-ak.ac.at\/index.php\/wp-json\/wp\/v2\/comments?post=32"}],"version-history":[{"count":10,"href":"https:\/\/robopsy.uni-ak.ac.at\/index.php\/wp-json\/wp\/v2\/pages\/32\/revisions"}],"predecessor-version":[{"id":121,"href":"https:\/\/robopsy.uni-ak.ac.at\/index.php\/wp-json\/wp\/v2\/pages\/32\/revisions\/121"}],"wp:attachment":[{"href":"https:\/\/robopsy.uni-ak.ac.at\/index.php\/wp-json\/wp\/v2\/media?parent=32"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}