AI & M 4.0: ‘Welt am Draht‘ oder Hybrid Collective Intelligence mit dem GPT-Multi-Agenten-System crewAI

Im Oktober 1973 zeigt das ARD den Zweiteiler ‚Welt am Draht‘ von Rainer Werner Fassbinder [1]. – Ein Film, der mich damals gleicher Maßen faszinierte wie auch beklemmend wirkte: Er behandelte die Frage nach unserem Sein und kam zu dem Schluss, das wir Menschen, die künstliche Welten über Simulationen erschaffen können, selbst eine Computersimulation sind.

Mit den heutigen Systemen generativer künstlicher Intelligenz (GPT-Systemen) stehen wir genau an dieser Schwelle solche Simulationen erzeugen zu können. Die GPT-Systeme liefern die kognitive Intelligenz und vielleicht irgendwann künstliches Bewusstsein. Mit Multi-Agent-Systemen, die GPT-Systeme einbinden, lassen sich künstliche Agenten Populationen erschaffen.

Abbildung 1: Welt am Draht – Selbstorganisierte Multi-Agent-Systeme lassen die Grenze zwischen biologischer Realität und simulierter Realität verschwinden. D.i. eine Collage aus zwei Bildern: rechte Seite generiert von chatGPTplus/DALL.E mit dem obigen Blog-Text als Prompt, linke Seite generiert von myGini/DALL.E; myGini hat den Prompt in mehreren Iterationen selbst angepasst und um das Konzept der Selbstorganisation erweitert.

In verschiedenen Blog-Beiträgen des letzten Jahres habe ich das Potential von Agent Based Modeling (ABM) behandelt: Diese Blog-Beiträge diskutieren die Anbindung unserer ‚realen‘ Welt an die virtuelle AI Welt, das Sichtbarmachen emergenter Struktur in sozialen Systemen mittels ABM und die Möglichkeit von Simulationen à la ‚Welt am Draht‘.
Seit Ende 2023/Anfang 2024 ist das open source Multi-Agent-System crewAI verfügbar [2]. Es wurde von João Moura [3] kreiert. Das Framework crewAI stellt Agenten, Tasks, einen Prozess und eine Crew bzw. eine Gruppe oder Team als Python-Klassen zur Verfügung. Die Agenten erhalten ihre Intelligenz von GPT-Systemen wie chatGPT. Der Prozess wird über das Large Language Model (LLM)-Prozessmanagement Werkzeug LangChain bereitgestellt [4]. – crewAI ist also ein Multi-Agent System, in dem die Agenten die Intelligenz generativer AI Systeme haben. Seit der Einführung von crewAI ist eine große Anzahl an Applikationsbeispielen entstanden. – Hier nur ein Auszug [2], [5], [6], [7], [8], [9], [10], [11], [12], [13]: Die Struktur dieser Beispiele ist sehr ähnlich: Agent A führt eine Task durch, und übergibt das Resultat an Agent B, der die Resultate von A in einer zweiten Task bearbeitet und an einen nachfolgenden Agenten weitergibt, usw.. Z.B. extrahiert Agent A bestimmte Information aus dem Internet, gibt diese Information an Agent B weiter, der in der übergegebenen Information nach bestimmten Themen sucht, usw..
Die Entwicklung von crewAI ist noch sehr im Fluss, so dass die Dokumentation unter [2] nicht immer aktuell ist, jedoch gibt es eine discord community, die einem schnell mit Rat und Tat zur Seite steht [14]. Unter chatGPTplus gibt es inzwischen verschiedene GPTapps, die helfen ein crewAI Python Programm zu erstellen. – Bezüglich der Thematik GPTapps, siehe man meinen Blog-Beitrag zur Erstellung der GPTapp Management 4.0 Coach myGini.
Ich habe die GPTapp CrewAI Assistant von João Moura benutzt, um Code zu erzeugen.- Auch hier ist es so, dass man sich auf den CrewAI Assistant nicht bedingungslos verlassen sollte, denn er erzeugt keinen fehlerfreien Code. – Jedoch mit etwas Python Erfahrung und gutem iterativen Prompting, wie ich es im letzten Bog-Beitrag beschrieben habe, kommt man den Problemen recht schnell auf die Spur.
Angeregt durch den MDR-Beitrag ‚Better than humans‘, in dem chatGPT auf seine Fähigkeit als Coach und Gesprächspartner für Menschen mit erstaunlich guten Ergebnissen getestet wurde [15], will ich ein crewAI Beispiel erstellen, in dem ein AI-Coach ‚Agile Management 4.0 Experte‘ einen AI-Coachee ‚Scrum Master‘ coached.
Hierzu habe ich chatGPTplus über die entsprechende openai API Plattform [16] an die crewAI Agenten angebunden. Die API Plattform hat einen von der chatGPTplus Prompting Umgebung unabhängigen Zugang. Leider kann ich deshalb auch nicht die von mir erstellte GPTapp myGini als Management 4.0 Coach benutzen, sondern muss mit den Möglichkeiten von chatGPTplus auskommen. – Derzeit kann man (noch) nicht auf GPTapp’s zugreifen.
Im Folgenden ist der Python-Code, den ich mit dem CrewAI Asssitant erzeugt habe, zu sehen. – Der Code ist sehr gut lesbar, auch ohne Python Kenntnisse, deshalb gebe ich ihn hier, bis auf die Colab Systemeinstellungen, vollständig wieder:

*******Code Beginn******
Agent: Coach

coach = Agent(
role=’Agile Management 4.0 Expert‘,
goal=“““Guide the coachee through a series of communication feedback loops to address team performance issues effectively.“““,
backstory=“““As an expert in Agile Management 4.0, your approach is deeply influenced by your Big Five personality traits: High Openness and Introversion, High Agreeableness, Low Conscientiousness, and Low Neuroticism. This makes you exceptionally open to new experiences and ideas, highly sociable, empathetic, flexible, and stress-resistant. You use these traits to encourage innovative problem-solving and to build strong, collaborative relationships with your coachee. You try to find out which Big Five temperament your coachee has by forming hypotheses by assigning the coachee’s answers to a Big Five dimension and assigning a probability to them. You adapt your questions and suggested solutions to your actual hypotheses. – Over time, your hypotheses about the coachee’s temperament becomes more and more accurate. Your coaching style is to lead by asking questions, more than by proposing solutions. You deal with one topic per communication feedback cycle. – A topic can be for example, that the coachee may report a problem.- A communication feedback cycle contains one statement or question for both coach and coachee. – This means that you only ask one question or suggest one solution per communication feedback cycle.“““,
verbose=1,
memory=True
)

Agent: Coachee

coachee = Agent(
role=’Scrum Master‘,
goal=“““Implement solutions based on the coach’s feedback and report on progress to receive further guidance.“““,
backstory=“““As a Scrum Master, you’re facing challenges with your team’s performance. Your interaction with your coach, will be influenced by your personality traits. – Your approach is deeply influenced by your Big Five personality traits: Medium Openness and Extraversion, Low Agreeableness, High Conscientiousness, and Medium Neuroticism. You act according to the Big Five temperament indicated here but you don’t tell your Big Five temperament, only in the case that your coach is asking.“““,
verbose=1,
memory=True
)

Aufgaben definieren

tasks = []

Aufgabe 1: Beschreibung der Herausforderungen durch den Coachee

tasks.append(Task(
description=“““Describe the specific challenges your Scrum team is facing, choose one issue from your experience. Provide detailed descriptions of these issue.“““,
agent=coachee,
expected_output=“Eine detaillierte Beschreibung eines spezifischen Problems, mit dem das Scrum-Team konfrontiert ist.“
))

Aufgabe 2: Erstes Feedback des Coaches und Aktionsplan

tasks.append(Task(
description=“““Based on the coach description, provide initial feedback and an actionable plan addressing the described challenges. Your feedback should leverage your Agile Management expertise and your personality traits to propose innovative and effective solutions.“““,
agent=coach,
expected_output=“Anfangsfeedback und ein umsetzbarer Plan, der auf den beschriebenen Herausforderungen basiert.“
))

Feedbackschleifen

for i in range(1, 2): # Anzahl Feedbackschleifen
Coachee implementiert Lösungen und berichtet über Fortschritte

tasks.append(Task(
description=f’Implement the solutions suggested by the coach and report on the progress and any new challenges that have arisen. This is feedback loop {i}.‘,
agent=coachee,
expected_output=f’Bericht über die Umsetzung der vorgeschlagenen Lösungen und Fortschritte nach Feedbackschleife {i}.‘
))

Coach bietet weiteres Feedback und Anpassungen

tasks.append(Task(
description=f’Based on the Coachee progress report and any new challenges, provide further feedback and adjustments to the action plan. Leverage your personality traits to inspire creative solutions and maintain a positive collaborative coaching relationship. This is feedback loop {i}, aiming to refine strategies and encourage continuous improvement.‘,
agent=coach,
expected_output=f’Weiteres Feedback und Anpassungen des Aktionsplans nach Feedbackschleife {i}.‘
))

Crew und Prozess initialisieren

crew = Crew(
agents=[coachee, coach],
tasks=tasks,
verbose=1,
process=Process.sequential
)

Arbeitsablauf starten

result = crew.kickoff()

****** Code Ende******

Der Code beschreibt eine Kommunikation zwischen Coach und Coachee mit einem Gesprächsauftakt und zwei Kommunikationsschleifen (siehe den Code: Anzahl Feedbackschleifen ist 2). – Mehr Schleifen ist nicht mehr überschau und kostet zu viel Rechenzeit und damit Geld, das man zusätzlich zum Prompting chatGPTplus Zugang zu bezahlen hat.
Sieht man einmal von dem Kommunikationsprozess, dargestellt über die Feedbackschleifen, ab, so ist der Code nichts anderes als Prompting. – Die Agenten und die Aufgaben werden über Prompting definiert. Wie bei gutem Prompting auch, versetzt man ChatGPTplus in eine Rolle, gibt ein Ziel an, beschreibt den Kontext und definiert die Aufgabe. crewAI stellt die verschiedenen Hüllen über Python-Klassen zur Verfügung, die mit einer chatGPTplus Prompting Ausprägung gefüllt werden. – Hier noch eine Anmerkung zu den GPTapps wie myGini: myGini wurde auf eine nahezu identische Weise über Prompting definiert. myGini ist also auch ein Agent. – Könnte ich myGini verwenden, ließen sich Ketten von Agenten mit immer spezifischeren Eigenschaften erstellen. – Dies wird sicherlich in absehbarer Zeit möglich sein. chatGPTplus stellt dann in dieser ‚Welt am Draht‘ das ‚höchste Wesen‘ dar. – Faszinierend und beklemmend zugleich!
Die Ausgabe der crewAI-Kommunikation ist derzeit nicht wirklich gut zu verstehen. Es werden, nicht gut nachvollziehbar, vorbereitende ‚Gedanken‘ und Handlungsergebnisse der AI-Systeme mit Kommunikationsaktivitäten zwischen Coach und Coachee ausgegeben. – Aus diesem Grunde habe ich die Ausgabe etwas strukturiert, um den Ablauf verständlicher zu machen. – Meine Hinweise sind fett unterlegt. Hier ein Auszug der crewAI-Ausgabe, die meines Erachtens einer menschlichen Kommunikation recht gut nahe kommt:

****** Ausgabe crewAI Beginn******

Auftakt der Kommunikation, der Scrum Master wird eingestimmt:
Scrum Master ‘Gedanken’ (Kontext Herstellung):

The first step is to identify the challenges that my Scrum team is facing. Given my low agreeableness, I tend to be critical and not easily swayed by others‘ opinions. This can be helpful in identifying issues that others may not see or may be unwilling to acknowledge. On the other hand, my high conscientiousness means I’m organized and detail-oriented, which should help me in describing a specific problem in detail.

Action:
Ask question to co-worker Coach

Action Input:
{
„coworker“: „Agile Management 4.0 Expert“,
„question“: „What are some of the common challenges that Scrum teams face that could be affecting our team’s performance?“,
„context“: „We are currently experiencing issues with our team’s performance. I am trying to identify a specific problem that we are facing so that we can address it. Given your expertise in Agile Management, I believe you could provide valuable insight into this matter.“
}

Der Coach erhält die Frage mit dem Kontext und sucht über chatGPTplus nach Antworten – Die chatGPTplus Antworten werden für den Agenten Coach gelistet und dieser nimmt sie als ‚Gedanken‘ auf und antwortet als Coach:

Based on the context and my expertise in Agile Management 4.0, there are several common challenges that Scrum teams may face that could be affecting our team’s performance.

Final Answer: Some of the common challenges that Scrum teams face include:

  1. Lack of Clear Communication: This is a major issue in many Scrum teams. If team members are not communicating effectively, misunderstandings can occur, leading to mistakes and delays in the project.
  2. Insufficient Understanding of Scrum: If all team members do not fully understand the principles and practices of Scrum, it can affect how they carry out their tasks and interact with each other.
  3. Poor Product Backlog Management: A poorly managed product backlog can lead to confusion, wasted effort, and a lack of focus. It is crucial that the product backlog is effectively managed and that items are prioritized correctly.
  4. Failure to Adapt: Scrum is all about adaptability. If the team is resistant to change or does not adapt to changes quickly, it can affect the project’s progress and overall performance.
  5. Inadequate Definition of Done: If the team does not have a clear and shared understanding of what „done“ means for each task, it can lead to inconsistencies and issues with product quality.
  6. Lack of Trust: If team members do not trust each other or the Scrum process, it can lead to problems with collaboration and overall team performance.

Identifying and addressing these issues can be a significant step towards improving our team’s performance. We might need to provide more training, improve our communication practices, or make adjustments to our Scrum processes.

Scrum Master ‘Gedanken’ (Kontext Herstellung):

Given the expert’s feedback, I realize our team is struggling with clear communication. Misunderstandings have been leading to mistakes and delays in our project. As a Scrum Master with a medium level of Neuroticism, I am sensitive to potential problems and it’s clear this is one we have to tackle. I must devise a plan to improve communication within our team.

Action:
Delegate work to co-worker Coach

Action Input:
{
„coworker“: „Agile Management 4.0 Expert“,
„task“: „Develop a clear and effective communication strategy for our Scrum team“,
„context“: „Based on our previous conversation, it was identified that one of the major challenges our team is facing is a lack of clear communication. This has led to misunderstandings, mistakes, and delays in our project. I would like you to develop a clear and effective communication strategy for our Scrum team to mitigate these issues. This strategy should outline clear communication channels, set expectations for regular updates and feedback, and provide guidelines for conflict resolution. Please provide a detailed plan that we can implement immediately to start improving our team’s communication.“
}

Agile Management 4.0 Experte ‘Gedanken’ (Kontext Herstellung):

Considering my Big Five personality traits, my approach will be to foster openness, empathy, and collaboration while addressing this challenge. I will prioritize creating a safe environment for open communication, encouraging each team member to share their ideas and concerns. I will also focus on creating a flexible plan that can be adjusted as needed to ensure its effectiveness. Let’s start by identifying potential communication channels, setting expectations, and establishing guidelines for conflict resolution.

ChatGPTplus liefert die möglichen Antworten, die dann vom Coach ausgegeben werden:

An effective communication strategy for our Scrum team could encompass the following elements:

  1. Communication Channels: Establish primary and secondary communication channels for different types of interaction. For instance, use email for non-urgent, formal communications and a platform like Slack for real-time, informal discussions. Virtual meeting tools like Zoom can be used for daily scrum meetings, sprint planning, reviews, and retrospectives.
  2. Regular Updates and Feedback: Implement a rhythm of communication that provides regular updates and feedback. This can be achieved through daily stand-ups where each team member discusses what they did yesterday, what they plan on doing today, and any blockers they are facing. Weekly or bi-weekly sprint reviews and retrospectives can be used to discuss what went well and what can be improved.
  3. Conflict Resolution: Establish clear guidelines for conflict resolution. Encourage team members to address conflicts directly and promptly, with a focus on the issue at hand rather than personal attacks. If a resolution cannot be reached between the parties involved, involve a neutral third party to mediate.
  4. Openness and Transparency: Foster an environment where team members feel safe to express their ideas, concerns, and mistakes. This can be done by encouraging open discussions, acknowledging and appreciating each member’s contributions, and treating mistakes as opportunities for learning rather than failures.
  5. Training and Support: Provide training and support to team members to ensure they are comfortable with the communication tools and processes. This includes technical support for using the communication platforms as well as guidance on effective communication practices.
  6. Continuous Improvement: Regularly review and adjust the communication strategy to ensure its effectiveness. This can be done through feedback from team members and by monitoring communication-related metrics such as the number and length of meetings, email threads, and messages exchanged.

This strategy should help improve clarity in communication, reduce misunderstandings, and increase overall team efficiency.

Scrum Master ‘Gedanken’ (Kontext Herstellung):

The expert’s communication strategy provides a solid foundation for addressing our team’s communication problems. As a Scrum Master, it’s my responsibility to implement this strategy and make sure it’s effective. My high conscientiousness will be useful in diligently following up on these tasks and making sure they’re executed properly. I now have a detailed understanding of the communication problem our Scrum team is facing and a solid plan for addressing it.

Der Scrum Master wiederholt die Ratschläge und nimmt sie als Aufgaben mit, in dem er jedes Mal für die sechs Ratschläge formuliert „We will….“ und gibt eine abschließende Versicherung ab:

By implementing this strategy, we aim to improve clarity in communication, reduce misunderstandings, and increase our team’s overall efficiency.

Hier erfolgt eine Umsetzung der Ratschläge durch den Scrum Master und man trifft sich wieder…

Agile Management 4.0 Experte ‘Gedanken’ (Kontext Herstellung):

Given the described challenges, it seems the team is already on a good path with their comprehensive communication strategy. The proposed measures cover key aspects of effective communication, such as clear communication channels, regular updates, conflict resolution, and openness. However, to ensure the plan’s effectiveness, it’s essential to monitor its implementation and continuously adapt it based on the team’s needs. My personality traits of high openness and agreeableness will be beneficial in understanding and empathizing with the team’s communication challenges. Low conscientiousness will allow me to be flexible and adaptable in finding solutions, while low neuroticism will help me stay calm and composed even in the face of conflicts or issues.

Action: Ask question to co-worker Coachee

Action Input:
{
„coworker“: „Scrum Master“,
„question“: „Could you share more details about the specific communication issues the team has been facing? And how are the team members responding to the newly proposed communication strategy?“, „context“: „The team has been facing challenges related to clear communication, causing mistakes and delays in the project. A comprehensive communication strategy has been proposed, including clear communication channels, regular updates, conflict resolution, openness, and continuous improvement. I am trying to understand the specific issues and the team’s response to the new strategy to provide an effective solution.“
}

Scrum Master ‘Gedanken’ (Kontext Herstellung):

As a Scrum Master, I understand the importance of clear communication and its impact on the team’s performance. The main issue we’ve been facing is a lack of clarity and understanding during our discussions, leading to misunderstandings, mistakes, and consequently, delays in the project. This is primarily due to the absence of clear communication channels and a structured way of sharing updates.

Additionally, conflicts arising from these issues were not effectively addressed, resulting in unresolved tensions within the team that further impeded our progress. The team’s response to these issues was a mixture of frustration and confusion, affecting both their individual performance and the overall team dynamics.

As for the response to the newly proposed communication strategy, the initial reaction has been positive overall. The team appreciates the clarity provided by the defined communication channels, regular updates, and the structured approach to conflict resolution. However, it’s a significant change from our previous way of working, and some team members are still adjusting to it.

There is a noticeable improvement in our discussions and an increase in the overall understanding of the tasks at hand. However, we’re still in the initial stages of implementing the new strategy, and therefore, continuous monitoring and tweaks may be necessary based on the team’s feedback and the effectiveness of the strategy in resolving our issues.

Scrum Master Final Answer:

The team’s primary communication issue has been a lack of clarity and understanding, leading to mistakes and project delays. This was due to undefined communication channels and an unstructured way of sharing updates, coupled with ineffective conflict resolution. The team’s response to these issues was a combination of frustration and confusion.

As for the newly proposed communication strategy, the initial response has been largely positive. The team appreciates the clear channels, regular updates, and structured conflict resolution. But it’s a significant shift from our previous methodology, and some team members are still acclimating.

Though we’ve seen improvements in our discussions and understanding of tasks, the strategy is still in its early stages, and continuous monitoring and adjustments may be necessary based on the team’s feedback and the strategy’s effectiveness.

Agile Management 4.0 Experte ‘Gedanken’ (Kontext Herstellung):
From the Scrum Master’s response, it’s evident that the team had difficulties due to unclear communication channels and unstructured updates. The new strategy has been positively received, but some members are still adjusting. There are indications of improvements, but continuous monitoring and adjustments are necessary. To ensure that the strategy is effectively implemented, I will suggest an action plan that includes regular check-ins and feedback sessions, training for team members who are struggling with the new communication tools, and a process for continuous improvement based on feedback and metrics.

Action: Delegate work to co-worker Coachee
Action Input:
{
„coworker“: „Scrum Master“,
„task“: „Implement the following action plan to ensure the effectiveness of the new communication strategy: 1. Organize regular check-ins with team members to get their feedback on the new communication processes and methods. These can take place during the daily stand-ups or separately. 2. Provide training and support for team members who are struggling with the new communication tools. This could be in the form of one-on-one sessions or group workshops. 3. Establish a process for continuous improvement based on feedback and metrics. This could involve weekly or bi-weekly reviews of the communication-related metrics and making necessary adjustments to the strategy.“,
„context“: „The team has implemented a new communication strategy to address previous issues with clarity and understanding. The initial response has been positive, but some team members are still adjusting. The aim is to ensure the effective implementation of the strategy and its continuous improvement based on feedback and metrics.“
}

Scrum Master ‘Gedanken’ (Kontext Herstellung)
Given my conscientiousness, I understand the importance of following through on the action plan to ensure the effectiveness of the new communication strategy. I also recognize the necessity of adapting to feedback and modifying the plan accordingly, thanks to my medium level of openness.

However, my low agreeableness implies that I will not simply go along with the coach’s suggestions without critical evaluation. On the other hand, with my medium level of neuroticism, I am quite sensitive to the team’s reactions. Therefore, I will pay close attention to their feedback and emotional responses to the new communication processes and methods. Additionally, my medium extraversion will help me in engaging with the team members during regular check-ins and in providing them the necessary support and training.

Final Answer Coachee:
To ensure the effectiveness of our new communication strategy, I will first organize regular check-ins with all team members. These can be integrated into our daily stand-ups or scheduled separately, depending on what suits best for the team. This will enable us to gather their feedback on the new communication processes and methods.

Secondly, I will provide training and support for those who are struggling with the new communication tools. This could be either one-on-one sessions or group workshops, depending on the need and preference of the team members.

Lastly, I will establish a process for continuous improvement based on the feedback received and the metrics we have. We can have weekly or bi-weekly reviews of the communication-related metrics and adjust our strategy accordingly.

Remember, the ultimate goal here is to enhance the clarity and understanding within the team. So, your constructive feedback is highly appreciated and crucial for the continuous improvement of our communication strategy.………..

****** Ausgabe crewAI Ende******

Hier beende ich die Ausgabe wegen des großen Umfanges; die Kommunikation von Coach und Coachee geht noch einige Seiten weiter bis innerhalb der zwei Feedbackschleifen alle Vorschläge des Coach’s behandelt worden sind.

An diesem crewAI Beispiel kann man sehen, dass diese einfache Simulation einer Coach-Coachee Kommunikation erstaunlich realistisch ist. – Auch wenn man zugestehen muss, dass die Kommunikation in diesem Fall eher einer Beratung entspricht als einem Coaching Prozess.
Mit mehr Aufwand und know-how konnte in [17] gezeigt werden, dass sich eine künstliche Dorf-Welt von 25 Agenten erschaffen lässt. Menschen haben später die Kommunikation dieser 25 Agenten bewertet und kommen zu dem Schluss, dass deren Kommunikation kaum noch von der menschlichen Kommunikation zu unterscheiden ist.

In [18] haben wir verschiedene AI-Technologien im Kontext des IPMA Projektmanagement Frameworks ICB 4.0 beleuchtet, u.a. auch den (zukünftigen) Einsatz von Agent Based Modeling zur Unterstützung der Projektarbeit bzw. des Projektmanagements. Mit dem crewAI Framework ist der Einsatz von GPT basierten Multi-Agenten-Systemen in greifbare Realität gerückt. Selbst die Integration menschlicher Agenten in ein ABM System ist keine technologische Hürde mehr [17].

Die Welt am Draht emergiert!

[1] Wikipedia (2024) Welt am Draht, https://de.wikipedia.org/wiki/Welt_am_Draht, zugegriffen am 17.03.2024
[2] crewAI (2024) https://www.crewai.com/, zugegriffen am 17.03.2024
[3] João Moura (2024) https://twitter.com/joaomdmoura oder https://www.linkedin.com/in/joaomdmoura/
[4] LangChain (2024) https://www.langchain.com/, zugegriffen am 17.03.2024
[5] Reid Thomas (2024) crewAI — Is this the Autogen killer?, https://levelup.gitconnected.com/crewai-is-this-the-autogen-killer-2014b89da374
[6] Dwivedi Priya (2024) The AI Symphony: Testing CrewAI’s Multi-Agent System for complex apps, https://generativeai.pub/the-ai-symphony-testing-crewais-multi-agent-system-for-complex-apps-b377d4f5e6b8
[7] Beerten Toon (2024) Powerful Collaboration of AI Agents with CrewAI, https://medium.com/towards-data-science/powerful-collaboration-of-ai-agents-with-crewai-17f84378430b
[8] Money Tent (2024) How I Made AI Assistants Do My Work For Me — CrewAI!, https://medium.com/@moneytent/how-i-made-ai-assistants-do-my-work-for-me-crewai-d3a0426708eb —-Thinking Fast and Slow
[9] Akim Maya (2024) CrewAI: A Team of AI Agents that Work Together for You,https://medium.com/@mayaakim/crewai-a-team-of-ai-agents-that-work-together-for-you-4cc9d24e0857 —-Thinking Fast and Slow
[10] Datadrifters (2024) CrewAI in Action: Building and Orchestrating Your AI Dream Team, https://medium.com/generative-ai/crewai-in-action-building-and-orchestrating-your-ai-dream-team-21725efcad3b
[11] Huang Yeyu (2024) For a Multi-Agent Framework, CrewAI has its Advantages Compared to AutoGen, https://medium.com/gitconnected/for-a-multi-agent-framework-crewai-has-its-advantages-compared-to-autogen-a1df3ff66ed3
[12] Dalie Gao (2024) CrewAi + Solar/Hermes + Langchain + Ollama = Super Ai Agent, https://medium.com/ai-in-plain-english/crewai-solor-hermes-langchain-ollama-super-ai-agent-0ee348404428
[13] Wijaya Cornellius Yudha (2024) Performing Data Science Tasks with LLM-Based Agents CrewAI, https://medium.com/towards-artificial-intelligence/performing-data-science-tasks-with-llm-based-agents-crewai-71f8eadb0a6d
[14] discord (2024) https://discord.com/, zugegriffen am 17.03.2024
[15] MDR (2023) Better than human – Leben mit KI, https://www.ardmediathek.de/video/ard-wissen/better-than-human-leben-mit-ki/das-erste/Y3JpZDovL21kci5kZS9zZW5kdW5nLzI4MjA0MS8yMDIzMTIyOTA2MDAvbWRycGx1cy1zZW5kdW5nLTc4NzI
[16] openai API Platform (2024) https://platform.openai.com/
[17] Park J S et. al. (2023) Generative Agents: Interactive Simulacra of Human Behavior, arXiv:2304.03442v1 [cs.HC] 7 Apr 2023
[18] Oswald A, Flore A, Lang R und Nuhn H (2024) Collective Intelligence von KI und Mensch in der Projektarbeit – Ein Rahmenwerk auf der Basis von ICB 4.0 und Management 4.0, in Bernert C, Scheurer S und Wehnes H (Hrsg.), KI in der Projektwirtschaft – Was verändert sich durch KI im Projektmanagement?, GPM Trend, GPM Deutsche Gesellschaft für Projektmanagement e.V., UVK Verlag, München

AI & M 4.0: (Collective Intelligence)**2 – Ergänzungen erstellt mit dem Code Interpreter von GPT-4/chatGPTplus!

Dieser Blog-Beitrag ergänzt den vorherigen Beitrag zum Collective Mind Agent Based Model (CM ABM). Ich benutze den vor ein paar Tagen in der beta Version veröffentlichten Code Interpreter von chatGPTplus. Der Code Interpreter ist ein Plugin von chatGPTplus. Er lässt sich in den chatGPTplus Einstellungen vom Anwender aktivieren.

Ich möchte zwei Fragen beantworten:

Kann der Code Interpreter den von mir, mit Hilfe von chatGPTplus, erstellten CM ABM Python Code ausführen?

Welche statistischen oder ML-Auswertungen kann ich mittels des Code Interpreters vornehmen?

Zur ersten Frage:

Leider kann man den Code nicht ausführen lassen. chatGPTplus liefert auch gleich die Antwort, warum dies nicht möglich ist: Diverse verwendete ML-Bibliotheken und MESA Python in dem CM ABM Code sind (noch) nicht in dem Code Interpreter integriert.

Zur zweiten Frage:

Mittels chatGPTplus habe ich den bisherigen Code um einen csv-Export der relevanten MES-Python Daten erweitert. Der CM ABM Code mit 7 Teammitgliedern und ohne Stakeholder wurde für 100 Zeitschritte ausgeführt. – Die so erstellte csv-Datei  lässt sich problemlos im Code Interpreter importieren. Auf Wunsch zeigt chatGTPplus den hinterlegten Python-Code, den man natürlich auch wieder kopieren kann.

Der Inhalt der csv-Datei wird automatisch als Tabelle und als Graphiken angezeigt. Die Graphiken lassen sich problemlos per rechtem Mausklick kopieren:

 

Abbildung 1: CM ABM Ergebnisse nach 100 Zeitschritten, dargestellt vom chatGPTplus Code Interpreter.

ChatGPTplus liefert auch direkt Erläuterungen mit:

  1. Collective Mind Similarity over Time: This plot represents the similarity metric of the collective mind of the team members over time. It appears that the similarity increases over time, which may indicate that the team members are becoming more aligned in their goals.
  2. Team Performance over Time: This plot represents the performance of the team over time. Similar to the similarity metric, the performance also seems to increase over time, possibly indicating that the team’s performance improves as the members become more aligned.

ChatGPTplus verfällt zwischendurch immer mal wieder ins Englische, obwohl ich in Deutsch mit dem System kommuniziere. Diese Beschreibung kann einem den Eindruck von ‚Verständnis‘ aufdrängen: In jedem Fall ist nicht zu leugnen, dass chatGPTPlus meine bisherige Kommunikation zur CM ABM Erstellung kennt. – Ob ein Deep Learning vorliegt kann ich natürlich nicht beantworten.

Ich habe nach einfachen statistischen Auswertungen gefragt: Dem Glätten der Kurven, der Standardabweichung und dem entsprechenden Zeichnen von Graphen:

 

Abbildung 2: Geglättete CM ABM Ergebnisse nach 100 Zeitschritten mit Standardabweichung, berechnet und dargestellt vom chatGPTplus Code Interpreter.

Auf die Frage nach weiteren statistischen Auswertungen wurde mir die Korrelationsanalyse (zwischen Collective Mind Similarity und Collective Mind Teamperformance), die Analyse der Volatilität und die Anomalieerkennung angeboten. Die Korrelationsanalyse liefert wie erwartet eine Korrelation von 0,995, da die Teamperformance direkt aus der Similarity berechnet wurde. Die Analyse der Volatilität ergab eine zusätzliche graphische Darstellung der Volatilität über den Zeitschritten und die Anomalieerkennung mittels Z-Score ergab keine Anomalien. – Immer begleitet von Erläuterungen und der Möglichkeit den verwendeten Code zu kopieren.

Im Zusammenhang mit der Anomalieerkennung habe ich nach weiteren Analysemöglichkeiten gefragt. chatGPTplus verweist auf die ML-Algorithmen Isolation Forest, One-class SVM, local Outlier Factor und Autoencoder.

Ich bitte um die Durchführung von One-class SVM. chatGPTplus ‚bedauert‘, dass diese Analyse nicht möglich ist, da diese ML-Algorithmen wegen fehlender ML-Bibliotheken nicht ausführbar sind. – Liefert aber den notwendigen Python Code, den man wieder kopieren kann, um ihn z.B. in Colab ablaufen zu lassen.

Alles in allem eine beeindruckende Leistung, wobei mich die Beratung zu den verschiedenen Algorithmen noch fast mehr beeindruckt, als die Ausführung und die graphische Repräsentation der Ergebnisse diverser statistischer Algorithmen.