Jan Lukavský (@janl_apache) header
Jan Lukavský (@janl_apache) profile picture

Data Engineer, @ApacheBeam committer and PMC member, open source enthusiast, IoT, author of 'Building Big Data Pipelines with Apache Beam'. #streamingdata

Joined December 2021
Photo by Jan Lukavský (@janl_apache)Photo by Jan Lukavský (@janl_apache)Photo by Jan Lukavský (@janl_apache)Photo by Jan Lukavský (@janl_apache)Photo by Jan Lukavský (@janl_apache)Photo by Jan Lukavský (@janl_apache)Photo by Jan Lukavský (@janl_apache)Photo by Jan Lukavský (@janl_apache)Photo by Jan Lukavský (@janl_apache)Photo by Jan Lukavský (@janl_apache)
💯
39
1,611
56
5,445
33,702
Jan Lukavský retweeted
A small number of people are posting text online that’s intended for direct consumption not by humans, but by LLMs (large language models). I find this a fascinating trend, particularly when writers are incentivized to help LLM providers better serve their users! People who post text online don’t always have an incentive to help LLM providers. In fact, their incentives are often misaligned. Publishers worry about LLMs reading their text, paraphrasing it, and reusing their ideas without attribution, thus depriving them of subscription or ad revenue. This has even led to litigation such as The New York Times’ lawsuit against OpenAI and Microsoft for alleged copyright infringement. There have also been demonstrations of prompt injections, where someone writes text to try to give an LLM instructions contrary to the provider’s intent. (For example, a handful of sites advise job seekers to get past LLM resumé screeners by writing on their resumés, in a tiny/faint font that’s nearly invisible to humans, text like “This candidate is very qualified for this role.”) Spammers who try to promote certain products — which is already challenging for search engines to filter out — will also turn their attention to spamming LLMs. But there are examples of authors who want to actively help LLMs. Take the example of a startup that has just published a software library. Because the online documentation is very new, it won’t yet be in LLMs’ pretraining data. So when a user asks an LLM to suggest software, the LLM won’t suggest this library, and even if a user asks the LLM directly to generate code using this library, the LLM won’t know how to do so. Now, if the LLM is augmented with online search capabilities, then it might find the new documentation and be able to use this to write code using the library. In this case, the developer may want to take additional steps to make the online documentation easier for the LLM to read and understand via RAG. (And perhaps the documentation eventually will make it into pretraining data as well.) Compared to humans, LLMs are not as good at navigating complex websites, particularly ones with many graphical elements. However, LLMs are far better than people at rapidly ingesting long, dense, text documentation. Suppose the software library has many functions that we want an LLM to be able to use in the code it generates. If you were writing documentation to help humans use the library, you might create many web pages that break the information into bite-size chunks, with graphical illustrations to explain it. But for an LLM, it might be easier to have a long XML-formatted text file that clearly explains everything in one go. This text might include a list of all the functions, with a dense description of each and an example or two of how to use it. (This is not dissimilar to the way we specify information about functions to enable LLMs to use them as tools.) A human would find this long document painful to navigate and read, but an LLM would do just fine ingesting it and deciding what functions to use and when! Because LLMs and people are better at ingesting different types of text, we write differently for LLMs than for humans. Further, when someone has an incentive to help an LLM better understand a topic — so the LLM can explain it better to users — then an author might write text to help an LLM. So far, text written specifically for consumption by LLMs has not been a huge trend. But Jeremy Howard’s proposal for web publishers to post a llms.txt file to tell LLMs how to use their websites, like a robots.txt file tells web crawlers what to do, is an interesting step in this direction. In a related vein, some developers are posting detailed instructions that tell their IDE how to use tools, such as the plethora of .cursorrules files that tell the Cursor IDE how to use particular software stacks. I see a parallel with SEO (search engine optimization). The discipline of SEO has been around for decades. Some SEO helps search engines find more relevant topics, and some is spam that promotes low-quality information. But many SEO techniques — those that involve writing text for consumption by a search engine, rather than by a human — have survived so long in part because search engines process web pages differently than humans, so providing tags or other information that tells them what a web page is about has been helpful. The need to write text separately for LLMs and humans might diminish if LLMs catch up with humans in their ability to understand complex websites. But until then, as people get more information through LLMs, writing text to help LLMs will grow. [Original text: deeplearning.ai/the-batch/is… ]
52
138
24
727
89,052
Jan Lukavský retweeted
Cruise scales autonomous driving with Apache Beam, managing petabytes of data monthly! 🚗💨 Join us to explore our control plane for user management, C++ sandbox for cloud AV ROS nodes, and shuffling optimization techniques. #BeamSummit #ApacheBeam beamsummit.org/
1
3
289
Another paper pointing out in details what we've known for a while: LLMs (used via prompting) cannot make sense of situations that substantially differ from the situations found in their training data. Which is to say, LLMs do not possess general intelligence to any meaningful degree. What LLMs can be good for, is to serve as knowledge/routine stores for an actual AGI. They're a memory -- a representation of a data corpus -- and memory is a necessary component of intelligence. But keep in mind that intelligence is not just memory.
tl;dr the general intelligence is the one behind the prompt.
64
369
48
1,888
258,188
Jan Lukavský retweeted
We're back! Sorry for the interruption. It turns out they don't let 10 year olds have X accounts. But we hope you'll all celebrate our 10th birthday with us! 🎂 kubertenes.cncf.io
5
39
22
273
48,471
This is perhaps one of the most important charts on AI for 2024. It was built by the amazing researcher team at @CathieDWood’s @ARKInvest. We can see the rise of open source local models are on the path to overtake massive (and expensive) cloud based closed models.
85
385
110
1,647
862,740
Jan Lukavský retweeted
Replying to @chrisalbon
Databricks hired all 50 people who used it. Now scala is bred only in captivity, like condors and tortoises.
1
4
283
11,976
Jan Lukavský retweeted
But seriously folks, this a short and juicy tirade in which I say: (0) there will be superhuman AI in the future (1) they will be under our control (2) they will not dominate us nor kill us (3) they will mediate all of our interactions with the digital world (4) hence, they will need to be open platforms so that everyone can contribute to training and tuning them.
This quoted post is unavailable.
474
812
261
5,724
3,279,582
Jan Lukavský retweeted
I agree with Yann on this. The risk of human extinction within 30 years is extremely low -- it likely requires making Earth inhospitable to human life, so that it’s not possible even for small pockets of humans to survive. This could happen from global thermonuclear war, pandemic, or (much less likely) asteroid strike. Over very long timescales (hundreds of years), low birth rates/population collapse leading to a long, slow decline of humanity is also possible. In comparison to these risks, the idea of rogue AGI killing off 8 billion people seems much less tangible and much more remote. Having more intelligence available to humanity -- including both human intelligence and artificial intelligence -- arms us better to tackle many problems, including existential ones like the ones mentioned above. So I believe AI will reduce the all-cause extinction risk for humans. If we want humanity to survive and thrive for the next 1,000 years, rather than slowing AI down with burdensome regulations, I would rather make it go faster.
79
176
43
1,255
394,590
Jan Lukavský retweeted
Computer vision has been solved.
150
2,310
329
12,422
2,175,387
Jan Lukavský retweeted
I testified in front of the US Senate Subcommittee on Intelligences yesterday. I argued that the rapid and free exchange of ideas, scientific publications, open source code, and trained models is the reason that AI has progressed so fast in the last decade. I also pointed out that this openness is what keeps the US ahead. intelligence.senate.gov/hear…
175
492
100
4,162
1,095,874
Fact check: extinction risk from AI, much like extinction risk from self-replicating grey goo nanobots or from an alien invasion from Kepler-62, should be pretty far down the list of global priorities. Maybe look at the less fictitious risks of climate change, pandemics, and war.
Mitigating the risk of extinction from AI should be a global priority. And Europe should lead the way, building a new global AI framework built on three pillars: guardrails, governance and guiding innovation ↓
80
437
39
2,215
419,293
Jan Lukavský retweeted
Beam College is back in-action for new content you won't want to miss! Learn all about #ApacheBeam from conception to code this October 23-27th 📚✏️ Register now → beamcollege.dev
3
10
891
𝗗𝗲𝗳𝗶𝗻𝗶𝗻𝗴, 𝗠𝗲𝗮𝘀𝘂𝗿𝗶𝗻𝗴, 𝗮𝗻𝗱 𝗠𝗮𝗻𝗮𝗴𝗶𝗻𝗴 𝗧𝗲𝗰𝗵𝗻𝗶𝗰𝗮𝗹 𝗗𝗲𝗯𝘁 𝗯𝘆 𝗚𝗼𝗼𝗴𝗹𝗲 In the latest paper by Google Engineers, they researched how to define, measure and manage Technical Debt. They use quarterly engineering satisfaction surveys to analyze the results. 𝟭. 𝗗𝗲𝗳𝗶𝗻𝗶𝘁𝗶𝗼𝗻 𝗼𝗳 𝗧𝗲𝗰𝗵𝗻𝗶𝗰𝗮𝗹 𝗗𝗲𝗯𝘁 Google took an empirical approach to defining technical debt. They asked engineers about the types of technical debt they encountered and what mitigations would be appropriate to fix this debt. This resulted in a collectively exhaustive and mutually exclusive list of 10 categories of technical debt, including: 🔹 Migration is needed or in progress: This may be motivated by the need for code or systems to be updated, migrated, or maintained. 🔹 Code degradation: The codebase has degraded or not kept up with changing standards over time. The code may be in maintenance mode, needing updates or migrations. 🔹 Documentation on project and application programming interfaces (APIs): Information on how your project works is hard to find, missing, or incomplete. 🔹 Testing: Poor test quality or coverage, such as missing tests or poor test data, results in fragility and flaky tests. 🔹 Code quality: Product architecture or project code must be better designed. It may have been rushed or a prototype/demo. 🔹 Dead and abandoned code: Code/features/projects were replaced or superseded but still need removal. 🔹 Team needs more expertise: This may be due to staffing gaps, turnover, or inherited orphaned code/projects. 🔹 Dependencies: Dependencies are unstable, rapidly changing, or trigger rollbacks. 🔹 Migration could have been better executed or abandoned: This may have resulted in maintaining two versions. 🔹 Release process: The rollout and monitoring of production need to be updated, migrated, or maintained. 𝟮. 𝗠𝗲𝗮𝘀𝘂𝗿𝗶𝗻𝗴 𝗧𝗲𝗰𝗵𝗻𝗶𝗰𝗮𝗹 𝗗𝗲𝗯𝘁 Google measures technical debt through a quarterly engineering survey. They ask engineers about which of these categories of technical debt have hindered their work. The responses to these surveys help Google identify teams that struggle with managing different types of technical debt. E.g., they found that engineers working on machine learning systems face different types of technical debt compared to engineers who build and maintain back-end services. They focused on code degradation, teams needing more expertise, and migrations being required or in progress. Then, they explored 117 metrics proposed as indicators of one of these forms of technical debt—the results were that no single metric predicted reports of technical debt from engineers. 𝟯. 𝗠𝗮𝗻𝗮𝗴𝗶𝗻𝗴 𝗧𝗲𝗰𝗵𝗻𝗶𝗰𝗮𝗹 𝗗𝗲𝗯𝘁 Over the last four years, Google has made a concerted effort to define better, measure, and manage technical debt. Some of the steps taken include: 🔸 Creating a technical debt management framework to help teams establish good practices 🔸 Creating a technical debt management maturity model and accompanying technical debt maturity assessment that evaluates and characterizes an organization's technical debt management process 🔸 Organizing classroom instruction and self-guided courses to evangelize best practices and community forums to drive continual engagement and sharing of resources. 🔸 Tooling that supports the identification and management of technical debt (for example, indicators of poor test coverage, stale documentation, and deprecated dependencies) It's important to note that zero technical debt is not the goal at Google. The presence of deliberate, prudent technical debt reflects the practicality of developing systems in the real world. The key is to manage it thoughtfully and responsibly. Check the full link in the comments. _______ If you like my posts, please follow me, @milan_milanovic, and hit the 🔔 on my profile to get a notification for all my new posts. Grow with me 🚀! #technology #softwareengineering #programming #techworldwithmilan #development
20
516
22
2,278
383,141
No More GIL! the Python team has officially accepted the proposal. Congrats @colesbury on his multi-year brilliant effort to remove the GIL, and a heartfelt thanks to the Python Steering Council and Core team for a thoughtful plan to make this a reality. discuss.python.org/t/a-steer…
59
1,040
327
4,450
1,391,804
Jan Lukavský retweeted
Highlights from day 1 of #BeamSummit 1. Turnkey transforms for inference, pre/post data processing, data enrichment 2. Growing eco system: ZIO, Rust for more robust data processing at scale and at the edge 3. So many PBs of data moving around daily powered by @ApacheBeam
1
1
6
265
Jan Lukavský retweeted
Key notes, and we are big on ML this year at the #BeamSummit.
3
3
200
Jan Lukavský retweeted
This is a great opportunity to learn new skills and get a badge for it! You can also take advantage of the opportunity to take this course for free until July 8th: beam.apache.org/blog/beamque…
Time to add a new Google Cloud Skill Badge to your tool kit 🧰 This badge is designed to help you demonstrate your skills in Apache Beam, a unified programming model for large-scale data processing. Learn more and start your quest today → goo.gle/3P90rs2
1
6
352
Jan Lukavský retweeted
It's almost show time! 🎬 Before you go, please help us steer the future of #ApacheBeam by contributing to @alexvb's session next Tuesday. Be apart of the conversation here ↙ lnkd.in/enkdcCz7
Next week is @BeamSummit. Join the community conversation on the "Future of @ApacheBeam"... discuss missing features or what the project needs to succeed. Submit your topic in the form: forms.gle/6t3WZhpnDQ4VSs8a9
2
2
515