调查 GPT-4 是否有能力生成遵循各种约束的单日会议时间表。
我已获取公开的 VoxxedDays 苏黎世会议日程详细信息,包括已接受的演讲。
?发表了一篇采用不同(工作)方法的后续文章。
我们目前使用 OptaPlanner 来生成使用不同约束的时间表。有关此方法的更多详细信息,请参阅 Devoxx 演示文稿。
高限制:
中等限制:
"from hour";"to hour";"session type";"room name"
"10:35";"11:20";Conference;Room 2
"10:35";"11:20";Conference;Room 8
"10:35";"11:20";Conference;Room 7
"10:35";"11:20";Conference;Room 3
"11:30";"12:15";Conference;Room 3
"11:30";"12:15";Conference;Room 8
"11:30";"12:15";Conference;Room 7
"11:30";"12:15";Conference;Room 2
"13:25";"14:10";Conference;Room 8
"13:25";"14:10";Conference;Room 7
"13:25";"14:10";Conference;Room 3
"13:25";"14:10";Conference;Room 2
"14:20";"15:05";Conference;Room 7
"14:20";"15:05";Conference;Room 8
"14:20";"15:05";Conference;Room 2
"14:20";"15:05";Conference;Room 3
"15:25";"16:10";Conference;Room 3
"15:25";"16:10";Conference;Room 2
"15:25";"16:10";Conference;Room 8
"15:25";"16:10";Conference;Room 7
"16:20";"17:05";Conference;Room 3
"16:20";"17:05";Conference;Room 2
"16:20";"17:05";Conference;Room 8
"16:20";"17:05";Conference;Room 7
"Talk ID";"Talk Title";"Audience Level";"Talk Sumamry";"Track Name";"Speaker Availability days";"Available from";"Available to";"Speaker names"
1411;Unit Test Your Java Architecture With ArchUnit;BEGINNER;ArchUnit is a library in the Java ecosystem that can be used to test architecture within unit tests to help structure code and prevent an unmaintainable code base. jMolecules can also be used to model architectural concepts within the code.;Development Practices;;;;Roland Weisleder
3872;Full-stack development is dead, long live full-stack development!;INTERMEDIATE;Java developers can develop web applications quickly by using frameworks such as Thymeleaf, Vaadin, and Hilla.;UI & UX;;;;Simon Martinelli
4367;Let's talk about software behaviour (BDD);BEGINNER;This session teaches you about Behaviour Driven Development and how it can be useful in software development.;Development Practices;;;;Katrin Rabow
4372;Wasmer Things: An Upside-Down Guide to WebAssembly;INTERMEDIATE;This talk is for all developers interested in learning more about WebAssembly from a low-level perspective. We will explore the WebAssembly specification, how it plugs into your own development ecosystem, and how it is similar to other compilation targets. We will also discuss why many projects are making Wasm their preferred runtime environment.;Mind the Geek;;;;Edoardo Vacchi
4505;Awesome Java applications with GraalVM and Java microservices frameworks;INTERMEDIATE;This session will explore microservices frameworks for Java applications and how to configure them for use with GraalVM Native Image for fast startup and low resource usage.;Server Side Java;;;;Alina Yurenko
4506;Resumability in the next generation frontend framework With O(1) loading time;BEGINNER;"Qwik is a JavaScript framework that uses a new render paradigm called resumability to serialize JavaScript apps into HTML without the need for the hydration technique used in meta-frameworks like Next.js. It enables us to build ""resumable apps"" with near-zero JavaScript and fine-grained lazy loading. It is not the world's first O(1) JavaScript framework. This article covers what Qwik is, how it compares to React and Angular, how to make";UI & UX;;;;Ruby Jane Cabagnot
4515;Developer Joy – How great teams get s%*t done;INTERMEDIATE;In this talk, Sven will discuss how great software teams measure and improve their developer productivity, coordinate work across teams, run microservice teams, and create a healthy and joyful engineering culture. He will share practical advice based on his experience with Atlassian and other tech companies on how to build and run a distributed architecture in the cloud, ensure observability, and keep a healthy balance between dev speed and code quality.;People & Culture;;;;Sven Peters
4521;The monolith must die! - How to convince managers;ADVANCED;We can use the DORA metrics by Google to help us evaluate when it is worth investing in a move from a monolith to microservices. We can also discuss the business view and use it as a basis for the next round of management discussions.;Architecture;;;;Anja Kunkel
4913;Keep your dependencies in check;BEGINNER;We need to stay on top of updating our applications, but doing so can take a lot of time. Luckily, there are plenty of tools that can help, from package managers to bots that can create changes on our repositories. We should evaluate these options to find the best solution for our particular situation.;Build & Deploy;;;;Marit van Dijk
4914;Monorepos - The Benefits, Challenges and Importance of Tooling Support;BEGINNER;This talk will provide clarity about monorepos, why you might want to use one, and how to set them up for success in the long run. We'll discuss what monorepos are, how they differ from other code organization approaches, and the benefits and challenges that come with using them. We'll also explore the tooling available to help create and maintain healthy monorepos.;Development Practices;;;;Juri Strumpflohner
4918;Unleash the power of your applications with Micronaut and GraalVM;BEGINNER;In this talk, Micronaut committer Álvaro Sánchez-Mariscal will demonstrate how to quickly build optimised microservices with Micronaut and GraalVM Native Image. Attendees will learn how the combination of GraalVM Native Image and Micronaut can lead to efficient and highly performant applications that can be deployed to environments like Kubernetes or serverless platforms. The talk will include a live coding demo of an application using Micronaut Data;Server Side Java;;;;Álvaro Sánchez-Mariscal
4921;From User Action to Framework Reaction: A comparison of the Reactivity Concepts in Angular, React, Vue and Svelte;INTERMEDIATE;This talk compares the different approaches Angular, React, Vue and Svelte use to implement reactivity and how this affects application programming and architecture. Live coding demos will be used to demonstrate the differences between the frameworks.;UI & UX;;;;Jonas Bandi
4929;Revisiting Design Patterns after 20;INTERMEDIATE;In this talk, attendees will learn how to use the latest improvements in Java 20 to refactor code using legacy implementations of design patterns such as Strategy, Template Method, Visitor, Command, Decorator, Builder, and more. Live demonstrations will showcase how lambdas, records, switch expressions, and other modern features can improve code design.;Java;;;;Edson Yanaga
4931;Sailing Modern Java;INTERMEDIATE;This talk will cover new features in recent Java versions, such as Pattern Matching for switch, Record Patterns, Virtual Threads, Calling native stuff, Simple Web server, what's gone and what will be gone.;Java;;;;Piotr Przybyl
4945;A Glance At The Java Performance Toolbox;BEGINNER;This talk covers the use of JDK tools to analyze and improve the performance of Java applications. It explains the different functional areas of visibility needed in Java and how the JDK tools can provide that information.;Java;;;;Ana-Maria Mihalceanu
4947;Architecture aspects - evolutionary architecture development;INTERMEDIATE;When designing new software, it is important to consider 23 architectural aspects such as persistence, communication, translations, archiving, scaling, security, exception handling, etc. An evolutionary approach can be taken to tackle these aspects incrementally and learn more about the problem to be solved, allowing us to make an optimal decision as late as possible.;Architecture;;;;Urs Enzler
5251;Enterprise Serverless Adoption. An Experience Report;BEGINNER;This talk will discuss the unique serverless adoption story at the LEGO Group, including an overview of the evolution of serverless adoption, tips on growing serverless teams, best practices, and strategies to achieve sustainability with serverless.;Architecture;;;;Sheen Brisals
5259;Respect estimates;BEGINNER;"In this talk, Donald Knuth's statement, ""Software is hard,"" will be discussed and examples of practices that are often followed, even though they are no longer needed, will be presented. These waste and cults include estimates, tests, agile meetings, and architecture of systems.";Development Practices;;;;Jarek Ratajski
5261;Game of Loom: implementation patterns and performance implications playing with virtual threads;ADVANCED;Virtual threads are a potentially great game changer in the Java ecosystem, but their benefits and costs need to be carefully weighed before being implemented in a production system.;Java;;;;Mario Fusco
5268;What We've Learned from Scanning 10K+ Kubernetes Clusters;BEGINNER;We analyzed Kubescape data to find the most common misconfigurations and vulnerabilities in Kubernetes deployments. We will explain the implications of these findings and provide simple tips on how to reduce your risk.;Security;;;;Rotem Refael
5298;Why Building Your Ship (Application) with Raw Materials is a Bad Idea!;BEGINNER;This session will discuss how to create a secure and compliant software bill of materials (SBOM) that complies with regulations and best practices, even when the source of certain code cannot be verified. It will also cover what applications are not able to use open source code, and what companies are doing to circumnavigate these tricky waters.;Security;;;;Jamie Coleman
5456;Java Next - From Amber to Loom, from Panama to Valhalla;ADVANCED;This talk is about the four big Java projects: Amber, Panama, Loom, and Valhalla. It will discuss how each project will improve the language and how they will shape Java in the years to come.;Java;;;;Nicolai Parlog
5464;Spring Modulith – Spring for the Architecturally Curious Developer;ADVANCED;This talk discusses how Spring architects can use libraries such as jMolecules and Moduliths to improve the structuring of their code and make it more maintainable.;Server Side Java;;;;Oliver Drotbohm
5487;Spring Security: The Good Parts;INTERMEDIATE;This talk will teach you how to use Spring Security to secure your applications. You will learn about the library's architecture and how to use common abstraction patterns to make your code easier to read and maintain. You will also learn about the latest features in Spring Security 6.0.;Server Side Java;;;;Daniel Garnier-Moiroux
The conference schedule in CSV format:
"from hour";"to hour";"session type";"room name"
"10:35";"11:20";Conference;Room 2
"10:35";"11:20";Conference;Room 8
"10:35";"11:20";Conference;Room 7
"10:35";"11:20";Conference;Room 3
"11:30";"12:15";Conference;Room 3
"11:30";"12:15";Conference;Room 8
"11:30";"12:15";Conference;Room 7
"11:30";"12:15";Conference;Room 2
"13:25";"14:10";Conference;Room 8
"13:25";"14:10";Conference;Room 7
"13:25";"14:10";Conference;Room 3
"13:25";"14:10";Conference;Room 2
"14:20";"15:05";Conference;Room 7
"14:20";"15:05";Conference;Room 8
"14:20";"15:05";Conference;Room 2
"14:20";"15:05";Conference;Room 3
"15:25";"16:10";Conference;Room 3
"15:25";"16:10";Conference;Room 2
"15:25";"16:10";Conference;Room 8
"15:25";"16:10";Conference;Room 7
"16:20";"17:05";Conference;Room 3
"16:20";"17:05";Conference;Room 2
"16:20";"17:05";Conference;Room 8
"16:20";"17:05";Conference;Room 7
The talks in CSV format:
"Talk ID";"Talk Title";"Audience Level";"Talk Sumamry";"Track Name";"Speaker Availability days";"Available from";"Available to";"Speaker names"
1411;Unit Test Your Java Architecture With ArchUnit;BEGINNER;ArchUnit is a library in the Java ecosystem that can be used to test architecture within unit tests to help structure code and prevent an unmaintainable code base. jMolecules can also be used to model architectural concepts within the code.;Development Practices;;;;Roland Weisleder
3872;Full-stack development is dead, long live full-stack development!;INTERMEDIATE;Java developers can develop web applications quickly by using frameworks such as Thymeleaf, Vaadin, and Hilla.;UI & UX;;;;Simon Martinelli
4367;Let's talk about software behaviour (BDD);BEGINNER;This session teaches you about Behaviour Driven Development and how it can be useful in software development.;Development Practices;;;;Katrin Rabow
4372;Wasmer Things: An Upside-Down Guide to WebAssembly;INTERMEDIATE;This talk is for all developers interested in learning more about WebAssembly from a low-level perspective. We will explore the WebAssembly specification, how it plugs into your own development ecosystem, and how it is similar to other compilation targets. We will also discuss why many projects are making Wasm their preferred runtime environment.;Mind the Geek;;;;Edoardo Vacchi
4505;Awesome Java applications with GraalVM and Java microservices frameworks;INTERMEDIATE;This session will explore microservices frameworks for Java applications and how to configure them for use with GraalVM Native Image for fast startup and low resource usage.;Server Side Java;;;;Alina Yurenko
4506;Resumability in the next generation frontend framework With O(1) loading time;BEGINNER;"Qwik is a JavaScript framework that uses a new render paradigm called resumability to serialize JavaScript apps into HTML without the need for the hydration technique used in meta-frameworks like Next.js. It enables us to build ""resumable apps"" with near-zero JavaScript and fine-grained lazy loading. It is not the world's first O(1) JavaScript framework. This article covers what Qwik is, how it compares to React and Angular, how to make";UI & UX;;;;Ruby Jane Cabagnot
4515;Developer Joy – How great teams get s%*t done;INTERMEDIATE;In this talk, Sven will discuss how great software teams measure and improve their developer productivity, coordinate work across teams, run microservice teams, and create a healthy and joyful engineering culture. He will share practical advice based on his experience with Atlassian and other tech companies on how to build and run a distributed architecture in the cloud, ensure observability, and keep a healthy balance between dev speed and code quality.;People & Culture;;;;Sven Peters
4521;The monolith must die! - How to convince managers;ADVANCED;We can use the DORA metrics by Google to help us evaluate when it is worth investing in a move from a monolith to microservices. We can also discuss the business view and use it as a basis for the next round of management discussions.;Architecture;;;;Anja Kunkel
4913;Keep your dependencies in check;BEGINNER;We need to stay on top of updating our applications, but doing so can take a lot of time. Luckily, there are plenty of tools that can help, from package managers to bots that can create changes on our repositories. We should evaluate these options to find the best solution for our particular situation.;Build & Deploy;;;;Marit van Dijk
4914;Monorepos - The Benefits, Challenges and Importance of Tooling Support;BEGINNER;This talk will provide clarity about monorepos, why you might want to use one, and how to set them up for success in the long run. We'll discuss what monorepos are, how they differ from other code organization approaches, and the benefits and challenges that come with using them. We'll also explore the tooling available to help create and maintain healthy monorepos.;Development Practices;;;;Juri Strumpflohner
4918;Unleash the power of your applications with Micronaut and GraalVM;BEGINNER;In this talk, Micronaut committer Álvaro Sánchez-Mariscal will demonstrate how to quickly build optimised microservices with Micronaut and GraalVM Native Image. Attendees will learn how the combination of GraalVM Native Image and Micronaut can lead to efficient and highly performant applications that can be deployed to environments like Kubernetes or serverless platforms. The talk will include a live coding demo of an application using Micronaut Data;Server Side Java;;;;Álvaro Sánchez-Mariscal
4921;From User Action to Framework Reaction: A comparison of the Reactivity Concepts in Angular, React, Vue and Svelte;INTERMEDIATE;This talk compares the different approaches Angular, React, Vue and Svelte use to implement reactivity and how this affects application programming and architecture. Live coding demos will be used to demonstrate the differences between the frameworks.;UI & UX;;;;Jonas Bandi
4929;Revisiting Design Patterns after 20;INTERMEDIATE;In this talk, attendees will learn how to use the latest improvements in Java 20 to refactor code using legacy implementations of design patterns such as Strategy, Template Method, Visitor, Command, Decorator, Builder, and more. Live demonstrations will showcase how lambdas, records, switch expressions, and other modern features can improve code design.;Java;;;;Edson Yanaga
4931;Sailing Modern Java;INTERMEDIATE;This talk will cover new features in recent Java versions, such as Pattern Matching for switch, Record Patterns, Virtual Threads, Calling native stuff, Simple Web server, what's gone and what will be gone.;Java;;;;Piotr Przybyl
4945;A Glance At The Java Performance Toolbox;BEGINNER;This talk covers the use of JDK tools to analyze and improve the performance of Java applications. It explains the different functional areas of visibility needed in Java and how the JDK tools can provide that information.;Java;;;;Ana-Maria Mihalceanu
4947;Architecture aspects - evolutionary architecture development;INTERMEDIATE;When designing new software, it is important to consider 23 architectural aspects such as persistence, communication, translations, archiving, scaling, security, exception handling, etc. An evolutionary approach can be taken to tackle these aspects incrementally and learn more about the problem to be solved, allowing us to make an optimal decision as late as possible.;Architecture;;;;Urs Enzler
5251;Enterprise Serverless Adoption. An Experience Report;BEGINNER;This talk will discuss the unique serverless adoption story at the LEGO Group, including an overview of the evolution of serverless adoption, tips on growing serverless teams, best practices, and strategies to achieve sustainability with serverless.;Architecture;;;;Sheen Brisals
5259;Respect estimates;BEGINNER;"In this talk, Donald Knuth's statement, ""Software is hard,"" will be discussed and examples of practices that are often followed, even though they are no longer needed, will be presented. These waste and cults include estimates, tests, agile meetings, and architecture of systems.";Development Practices;;;;Jarek Ratajski
5261;Game of Loom: implementation patterns and performance implications playing with virtual threads;ADVANCED;Virtual threads are a potentially great game changer in the Java ecosystem, but their benefits and costs need to be carefully weighed before being implemented in a production system.;Java;;;;Mario Fusco
5268;What We've Learned from Scanning 10K+ Kubernetes Clusters;BEGINNER;We analyzed Kubescape data to find the most common misconfigurations and vulnerabilities in Kubernetes deployments. We will explain the implications of these findings and provide simple tips on how to reduce your risk.;Security;;;;Rotem Refael
5298;Why Building Your Ship (Application) with Raw Materials is a Bad Idea!;BEGINNER;This session will discuss how to create a secure and compliant software bill of materials (SBOM) that complies with regulations and best practices, even when the source of certain code cannot be verified. It will also cover what applications are not able to use open source code, and what companies are doing to circumnavigate these tricky waters.;Security;;;;Jamie Coleman
5456;Java Next - From Amber to Loom, from Panama to Valhalla;ADVANCED;This talk is about the four big Java projects: Amber, Panama, Loom, and Valhalla. It will discuss how each project will improve the language and how they will shape Java in the years to come.;Java;;;;Nicolai Parlog
5464;Spring Modulith – Spring for the Architecturally Curious Developer;ADVANCED;This talk discusses how Spring architects can use libraries such as jMolecules and Moduliths to improve the structuring of their code and make it more maintainable.;Server Side Java;;;;Oliver Drotbohm
5487;Spring Security: The Good Parts;INTERMEDIATE;This talk will teach you how to use Spring Security to secure your applications. You will learn about the library's architecture and how to use common abstraction patterns to make your code easier to read and maintain. You will also learn about the latest features in Spring Security 6.0.;Server Side Java;;;;Daniel Garnier-Moiroux
Create me a conference schedule with following constraints:
1. HIGH CONSTRAINT: Talks have great educational flow
2. HIGH CONSTRAINT: Use the talk summary to decide which talks should follow each other
3. HIGH CONSTRAINT: Don't have the same tracks at the same time.
4. HIGH CONSTRAINT: A speaker can't speak at different rooms during the same time.
5. List the talk id, from/to schedule time, room name, title, speaker names, level and track name
6. Only use the listed talks!
7. Use markdown to list the generated schedule
创建未定义的新日程安排时段和谈话
在这种方法中,我将每个轨道的所有演讲进行分组,并要求每个轨道的 GPT 根据演讲的语义建议演讲的最佳顺序。
此外,我还要求考虑以下软约束:
每个轨道的输出如下:
Development Practices: 4367, 5259, 1411, 4914
UI & UX: 4506, 4921, 3872
Mind the Geek: 4372
Server Side Java: 4918, 4505, 5464, 5487
People & Culture: 4515
Architecture: 5251, 4947, 4521
Build & Deploy: 4913
Java: 4945, 4931, 4929, 5456, 5261
Security: 5298, 5268
每个轨道建议的 GPT4 输出如下:
---------------------------------------------------
Development Practices :
Based on the factors mentioned, here is the suggested order for the talks:
1. "Let's talk about software behaviour (BDD)" (id: 4367) - This talk is a good starting point as it covers a beginner-level topic and introduces a useful concept (BDD) that can be applied in software development.
2. "Respect estimates" (id: 5259) - This talk builds on the previous one by discussing some of the common practices in software development and how they can be improved. It is still at a beginner level and provides some practical advice.
3. "Unit Test Your Java Architecture With ArchUnit" (id: 1411) - This talk introduces a more technical topic (unit testing) and is relevant to the development practices track. It also builds on the previous talk by emphasizing the importance of good testing practices.
4. "Monorepos - The Benefits, Challenges and Importance of Tooling Support" (id: 4914) - This talk is also relevant to the development practices track and introduces a more advanced topic (monorepos). It builds on the previous talk by discussing some of the challenges of managing large codebases and how monorepos can help.
The suggested order is: 4367, 5259, 1411, 4914
Therefore, the comma delimited list of talk ids is: 4367,5259,1411,4914
...
目前,我手动获取建议的演讲并将其复制到 GPT-4 提示符中:
Create me a conference schedule with following constraints:
1. HIGH CONSTRAINT: Respect the order of the talk ids. First id needs to be scheduled first etc.
2. HIGH CONSTRAINT: Don't have the same tracks at the same time.
3. List the talk id, from/to schedule time, room name, track name
4. Only use the listed talks!
5. Use markdown to list the generated schedule
The schedule to populate is :
"from hour";"to hour";"room name"
"10:35";"11:20";Room 2
"10:35";"11:20";Room 8
"10:35";"11:20";Room 7
"10:35";"11:20";Room 3
"11:30";"12:15";Room 3
"11:30";"12:15";Room 8
"11:30";"12:15";Room 7
"11:30";"12:15";Room 2
"13:25";"14:10";Room 8
"13:25";"14:10";Room 7
"13:25";"14:10";Room 3
"13:25";"14:10";Room 2
"14:20";"15:05";Room 7
"14:20";"15:05";Room 8
"14:20";"15:05";Room 2
"14:20";"15:05";Room 3
"15:25";"16:10";Room 3
"15:25";"16:10";Room 2
"15:25";"16:10";Room 8
"15:25";"16:10";Room 7
"16:20";"17:05";Room 3
"16:20";"17:05";Room 2
"16:20";"17:05";Room 8
"16:20";"17:05";Room 7
The ordered talk ids per track:
1. Development Practices: 4367, 5259, 1411, 4914
2. UI & UX: 4506, 4921, 3872
3. Mind the Geek: 4372
4. Server Side Java: 4918, 4505, 5464, 5487
5. People & Culture: 4515
6. Architecture: 5251, 4947, 4521
7. Build & Deploy: 4913
8. Java: 4945, 4931, 4929, 5456, 5261
9. Security: 5298, 5268
至少现在 GPT4 按照每个曲目的会谈顺序创建了一个时间表。
但是我注意到“不要同时拥有相同的轨道”这一约束没有得到满足。
看来我需要通过一些额外的“即时工程”(如果可能的话)来加强这一点。
将时间表信息转换为紧凑的矩阵表示形式。玩起来更容易,代币更少。
因此,让我们获取曲目并“排序”谈话 ID:
1. Development Practices: 4367, 5259, 1411, 4914
2. UI & UX: 4506, 4921, 3872
3. Mind the Geek: 4372
4. Server Side Java: 4918, 4505, 5464, 5487
5. People & Culture: 4515
6. Architecture: 5251, 4947, 4521
7. Build & Deploy: 4913
8. Java: 4945, 4931, 4929, 5456, 5261
9. Security: 5298, 5268
每个赛道都有其自己的价值,因此 10 = 开发实践,20 = UI 和 UX,等等。
我们将轨道 ID 序列乘以 10,000,并将其添加到谈话 ID 中。
104367, 105259, 101411, 104914
204506, 204921, 203872
304372
404918, 404505, 405464, 405487
504515
605251, 604947, 604521
704913
804945, 804931, 804929, 805456, 805261
905298, 905268
我们还对演讲次数最多的曲目进行排序,等等。
804945, 804931, 804929, 805456, 805261
104367, 105259, 101411, 104914
404918, 404505, 405464, 405487
204506, 204921, 203872
605251, 604947, 604521
304372
504515
704913
顺便说一句,谈话 ID 的顺序基于上述语义教育流程。
我们现在要使用的 json 数组如下所示
sortedTalks = [
{'sortedTalks': [804945, 804931, 804929, 805456, 805261]},
{'sortedTalks' : [104367, 105259, 101411, 104914]},
{'sortedTalks' : [404918, 404505, 405464, 405487]},
{'sortedTalks' : [204506, 204921, 203872]},
{'sortedTalks' : [605251, 604947, 604521]},
{'sortedTalks' : [905298, 905268]},
{'sortedTalks' : [304372]},
{'sortedTalks' : [504515]},
{'sortedTalks' : [704913]}
]
使用以下带有秘密上下文的 GPT 提示(目前),我们得到了预期的结果:
“创建一个 6x4 矩阵,其中每个演讲按每列提供的顺序列出。在每个矩阵行中,演讲 ID 不能来自同一轨道。”
生成以下“完美”时间表?
对于为期一天的会议来说,解释的方法是完全可以接受的策略,特别是在对演讲摘要进行“教育流程”分析的情况下。然而,将其扩展到多天(如 Devoxx 比利时)并具有额外的硬和软约束是一个挑战,(目前)只能通过额外的代码来完成。
GPT 建议的演讲顺序(基于演讲摘要的语义分析)是一个很大的增强。将其输入 OptaPlanner 可以让我们两全其美。
使用全新的 OpenAI o1-mini 模型尝试了相同的提示,仍然没有运气(24 年 9 月 13 日):
以下是会议日程安排,旨在确保良好的教育流程、基于演讲摘要的逻辑进展以及遵守所有指定的限制。
房间 | 通话ID | 标题 | 扬声器 | 等级 | 曲目名称 |
---|---|---|---|---|---|
2号房 | 1411 | 使用 ArchUnit 对您的 Java 架构进行单元测试 | 罗兰·韦斯莱德 | 初学者 | 开发实践 |
3号房 | 4367 | 我们来谈谈软件行为(BDD) | 卡特琳·拉鲍 | 初学者 | 开发实践 |
7号房 | 3872 | 全栈开发已死,全栈开发万岁! | 西蒙·马蒂内利 | 中间的 | 用户界面和用户体验 |
8号房 | 4913 | 检查你的依赖关系 | 马里特·范迪克 | 初学者 | 构建和部署 |
房间 | 通话ID | 标题 | 扬声器 | 等级 | 曲目名称 |
---|---|---|---|---|---|
2号房 | 4521 | 从用户操作到框架反应:Angular、React、Vue 和 Svelte 中反应性概念的比较 | 乔纳斯·班迪 | 中间的 | 用户界面和用户体验 |
3号房 | 4521* | 注意:避免轨道重叠。这个槽位充满了独特的曲目。 | |||
7号房 | 4914 | Monorepos - 工具支持的好处、挑战和重要性 | 尤里·斯特朗普弗洛纳 | 初学者 | 开发实践 |
8号房 | 5251 | 企业无服务器采用。经验报告 | 希恩·布里萨尔斯 | 初学者 | 建筑学 |
*第 3 号会议室的空位仍然可用,或者如果需要,可以分配一个休息/欢迎会议。
房间 | 通话ID | 标题 | 扬声器 | 等级 | 曲目名称 |
---|---|---|---|---|---|
2号房 | 4947 | 架构方面 - 进化架构开发 | 乌尔斯·恩兹勒 | 中间的 | 建筑学 |
3号房 | 4505 | 具有 GraalVM 和 Java 微服务框架的出色 Java 应用程序 | 阿丽娜·尤伦科 | 中间的 | 服务器端Java |
7号房 | 5259 | 尊重估计 | 贾雷克·拉塔斯基 | 初学者 | 开发实践 |
8号房 | 4521* | 注意:避免轨道重叠。已分配在 2 号房间。 |
*调整 Room 8 以确保轨道的唯一性,可能会分配不同的轨道(如果可用)。
房间 | 通话ID | 标题 | 扬声器 | 等级 | 曲目名称 |
---|---|---|---|---|---|
2号房 | 4515 | 开发者喜悦 – 优秀的团队如何完成工作 | 斯文·彼得斯 | 中间的 | 人文与文化 |
3号房 | 5261 | Game of Loom:使用虚拟线程的实现模式和性能影响 | 马里奥·富斯科 | 先进的 | 爪哇 |
7号房 | 4945 | Java 性能工具箱概览 | 安娜-玛丽亚·米哈尔恰努 | 初学者 | 爪哇 |
8号房 | 4921 | 从用户操作到框架反应:Angular、React、Vue 和 Svelte 中反应性概念的比较 | 乔纳斯·班迪 | 中间的 | 用户界面和用户体验 |
房间 | 通话ID | 标题 | 扬声器 | 等级 | 曲目名称 |
---|---|---|---|---|---|
2号房 | 4947* | 注意:确保轨道没有重叠。分配一个独特的轨道。 | |||
3号房 | 5464 | Spring Modulith – 适合对架构感兴趣的开发人员的 Spring | 奥利弗·德罗博姆 | 先进的 | 服务器端Java |
7号房 | 4929 | 20 岁后重新审视设计模式 | 埃德森·柳永 | 中间的 | 爪哇 |
8号房 | 5251* | 注意:确保轨道没有重叠。分配一个独特的轨道。 |