Karin Prater
Karin Prater
  • 109
  • 895 942
AI on Mac Made Easy: How to run LLMs locally with OLLAMA in Swift/SwiftUI
Running AI on Mac in your Xcode projects just got simpler! Join me as I guide you through running Local Large Language Models (LLMs) like llama 3 locally on your Mac with OLLAMA. In this video, I’ll walk you through installing OLLAMA, an open-source platform, and demonstrate how you can integrate AI directly into your Swift and SwiftUI apps.
Whether you’re dealing with code, creating new applications, or simply curious about AI capabilities on macOS, this tutorial covers everything from basic setup to advanced model configurations. Dive into the world of local AI and enhance your apps’ functionality without the need for extensive cloud computing resources. Let’s explore the potential of local AI together, ensuring your development environment is powerful and efficient. Watch now to transform how you interact with AI on your Mac!
👨‍💻 What You’ll Learn:
- How to install and set up OLLAMA on your Mac.
- Practical demonstrations of OLLAMA in action within the terminal and alongside SwiftUI.
- Detailed guidance on optimizing OLAMA for various system configurations.
- Customizing AI models
🔍 Why Watch?
- Understand the benefits of running AI locally versus cloud-based solutions.
- Watch real-time tests of AI models on a MacBook Pro with an M1 chip, showcasing the power and limitations.
- Gain insights into modifying AI responses to fit your specific coding style and project requirements.
If you liked what you learned and you want to see more, check out one of my courses!
👨‍💻 my macOS development course learn.swiftyplace.com/macos-development-swiftui-course
👨‍💻 my Core Data and SwiftUI course learn.swiftyplace.com/swiftui-core-data-mastery-course
👩🏻‍💻 SwiftUI layout course
learn.swiftyplace.com/swiftui-layout-course
⬇️ Download ollama: ollama.com/
⬇️ Download ollamac project files: github.com/kevinhermawan/Ollamac
#SwiftUI #ai #macos
Переглядів: 3 871

Відео

WWDC24: Key Updates for macOS Development with SwiftUI
Переглядів 2,4 тис.2 місяці тому
What's New in macOS 15 for SwiftUI development with WWDC24. In this video, I dive into the exciting new features coming to macOS 15 for SwiftUI development, as announced at WWDC24. We'll explore new APIs for window management, keyboard input, tab views, and much more. I'll also show you some practical demos using Xcode 16 and macOS 15 beta to illustrate these enhancements. This video is perfect...
Get Ready For WWDC 2024: Updates, AI, and Developer Predictions
Переглядів 2,5 тис.2 місяці тому
Get ready for WWDC 2024! 🎉 If you’re gearing up for the latest and greatest in Apple’s software development, you’ve come to the right place. In this video, I’ll be diving into what to expect, how I prepare, and some exciting predictions for what could be unveiled at this year’s event. 🔍 What’s Inside: - Predictions for WWDC 2024: Join me as I share my thoughts on potential updates, focusing on ...
Make a macOS app PART 2: Keyboard Shortcuts, Settings Window and Menu Bar Extra - SwiftUI tutorial
Переглядів 2,3 тис.3 місяці тому
In this 2nd part of our SwiftUI series on building a macOS app, I dive deeper into enhancing the functionality of our screenshot application. If you’ve ever wanted to streamline your workflow or integrate more advanced features into your macOS apps, this tutorial is tailored for you. What You’ll Learn: 1. Global Keyboard Shortcuts: I’ll show you how to implement global keyboard shortcuts that a...
Make a MacOS App from Start to Finish with SwiftUI - Screenshot app - PART 1
Переглядів 11 тис.3 місяці тому
Start macOS app development in this SwiftUI tutorial where I guide you through creating a screenshot app from scratch. Learn how to leverage command line tools for powerful functionality, manage images with NSPasteboard, and enhance your app’s interface with SwiftUI’s LazyVGrid and drag-and-drop features. This is the first part of a series where you will learn about macos app develeopment. This...
XCTest Tutorial: How to add automated UI tests for Better iOS App Quality - Swift - SwiftUI - Xcode
Переглядів 3,4 тис.4 місяці тому
In this XCTest Tutoria tutorial, I guide you through the steps to add automated UI tests to your iOS app using XCTest in Xcode. You’ll learn the importance of testing your SwiftUI app under various data loads to ensure optimal performance and quality. You’ll discover how to: - Write UI tests using XCTest for UI testing. - Set up your Xcode project with the necessary test targets. - Run tests on...
The Essentials of SwiftUI View Identity: How to Ensure Reliable View Updates Across Your iOS Apps
Переглядів 1,1 тис.5 місяців тому
Discover the core principles of SwiftUI view identity and master the art of maintaining consistent and reliable view updates in your iOS app. In this SwiftUI tutorial, I delve into the critical concept of view identity, which plays a pivotal role in SwiftUI, ensuring your app’s interface reflects data changes accurately and efficiently. Whether you’re dealing with lists, popovers, sheets, or ma...
SwiftUI Performance Optimisation: How to manage Data Flow and UI Updates in your iOS and macOS apps
Переглядів 2,6 тис.5 місяців тому
How to optimize data flow and managing UI updates efficiently in SwiftUI. In this tutorial, I dive into the common performance pitfalls when working with complex UIs, large images, and view updates in SwiftUI. 🚀 What You’ll Learn: - Understanding SwiftUI’s automatic UI updates with ObservableObject - Strategies for reducing unnecessary view refreshes - How to manage complex data sets without co...
From Slow to Fast: Profiling SwiftUI Applications for Peak Performance - SwiftUI Testing Tutorial 1
Переглядів 2,8 тис.5 місяців тому
Are you tired of your SwiftUI app’s performance not living up to your expectations? In this deep-dive tutorial, I walk you through three powerful strategies to pinpoint and squash performance issues in SwiftUI 🚀. You’ll learn how to use Instruments, debugging in Xcode, and visual cues to optimize your app’s efficiency. Stop guessing and start mastering the art of SwiftUI performance! In this vi...
How to Make a Color Picker with ScrollView, Scroll Position and Visual Effects - SwiftUI iOS 17
Переглядів 1,7 тис.9 місяців тому
In this SwiftUI tutorial, I’ll show you how to create a custom color picker with scroll position and visual effects using SwiftUI in iOS 17. With the new features introduced in iOS 17, you can now easily track the scroll position and create a fancy color picker. First, we’ll explore the default color picker in iOS and learn how to customize its appearance. Then, we’ll dive into creating our own...
How to translate and localize an iOS app with string catalogs in Xcode 15
Переглядів 12 тис.11 місяців тому
In this tutorial, I show you how to translate and localize an iOS app with string catalogs in Xcode 15. Localizing your app and managing string resources can be a difficult task, but with the new string catalogs feature in Xcode 15, it has become much easier. In this video, I walk you through the process of working with string catalogs and converting an existing project. First, I demonstrate ho...
How to Save and Manage Data with Core Data in Swift - SwiftUI Basics Tutorial 2023
Переглядів 15 тис.11 місяців тому
Are you struggling to find an efficient and easy way to save and manage user data in your Swift app? - In this tutorial, we’ll dive into the basics of Core Data, a powerful framework that allows you to save or cache data locally on the device. In a previous tutorial, I created a macOS/iOS task manager app and encountered challenges with filtering data streams. To overcome this, we’ll transform ...
Beyond Basics: Can SwiftUI Handle the Challenge of Complex macOS Apps?
Переглядів 6 тис.11 місяців тому
Are you a macOS enthusiast looking to create your first macOS app? Unsure about whether to use SwiftUI or AppKit? I've developed three rather complex apps with SwiftUI, and in some cases, I had to transition to AppKit. In this video, I'll share my experiences and provide a review of SwiftUI for macOS. I'll highlight what to be cautious of, the advantages, and the aspects that might not work as ...
How to build a macOS app for beginners (2023, Swift, SwiftUI, Xcode 15) - mac development course
Переглядів 43 тис.11 місяців тому
Build your first macos app with SwiftUI. In this mini course, I'm excited to provide you with a foundational introduction to creating macOS applications using Swift and SwiftUI within Xcode 15. Whether you're taking your first steps into programming or venturing into the realm of macOS development, this video is tailored to give you a head start in 2023. This tutorial serves as your stepping st...
I converted a Core Data to SwiftData: Here is what happened - Xcode 15 Beta 5
Переглядів 8 тис.Рік тому
Core Data and SwiftData are both frameworks that help you store the user's data in a SwiftUI application. In this video, I share my experience of converting a complex Core Data project to SwiftData. I discuss the advantages, missing features, and issues I encountered during the process. I aim to provide a comprehensive comparison between Core Data and SwiftData, showcasing the similarities and ...
How to use SwiftData with Previews - Xcode 15 beta 5 - Preview Container and Sample Data
Переглядів 4,3 тис.Рік тому
How to use SwiftData with Previews - Xcode 15 beta 5 - Preview Container and Sample Data
SwiftData Tutorial: How to Easily Persist Data in SwiftUI - Xcode 15 - Swift
Переглядів 18 тис.Рік тому
SwiftData Tutorial: How to Easily Persist Data in SwiftUI - Xcode 15 - Swift
Advanced SwiftUI Tutorial: Build a Complex App with Swift Charts for iOS 17 & macOS (Xcode 15 2023)
Переглядів 15 тис.Рік тому
Advanced SwiftUI Tutorial: Build a Complex App with Swift Charts for iOS 17 & macOS (Xcode 15 2023)
Introduction to SwiftCharts: Creating Charts and Graphs in SwiftUI
Переглядів 14 тис.Рік тому
Introduction to SwiftCharts: Creating Charts and Graphs in SwiftUI
SwiftUI Search Bar - How to work with searchable in your iOS and macOS apps
Переглядів 8 тис.Рік тому
SwiftUI Search Bar - How to work with searchable in your iOS and macOS apps
SwiftUI Data Flow with the new Observation - simpler SwiftUI code and improved performance in iOS 17
Переглядів 15 тис.Рік тому
SwiftUI Data Flow with the new Observation - simpler SwiftUI code and improved performance in iOS 17
How to use SwiftUI Table on macOS and iOS
Переглядів 7 тис.Рік тому
How to use SwiftUI Table on macOS and iOS
SwiftUI in Action: A Deep Dive into Action Sheets and Confirmation Dialog
Переглядів 1,3 тис.Рік тому
SwiftUI in Action: A Deep Dive into Action Sheets and Confirmation Dialog
How to Show SwiftUI Alerts with Buttons, Textfields and Error Messages
Переглядів 3 тис.Рік тому
How to Show SwiftUI Alerts with Buttons, Textfields and Error Messages
SwiftUI Menu and Context Menu: How to Show Buttons with Dropdown Lists
Переглядів 8 тис.Рік тому
SwiftUI Menu and Context Menu: How to Show Buttons with Dropdown Lists
How to work with SwiftUI Popovers and Popups
Переглядів 8 тис.Рік тому
How to work with SwiftUI Popovers and Popups
SwiftUI Presentations with Modals, Bottom Sheets, and FullScreen cover in iOS
Переглядів 11 тис.Рік тому
SwiftUI Presentations with Modals, Bottom Sheets, and FullScreen cover in iOS
SwiftUI TabView Tutorial - How to work with Tab Bar Navigation, Page Style, and tab items
Переглядів 21 тис.Рік тому
SwiftUI TabView Tutorial - How to work with Tab Bar Navigation, Page Style, and tab items
Decoding WWDC 2023: Insights and Highlights for Developers - SwiftUI News
Переглядів 2,2 тис.Рік тому
Decoding WWDC 2023: Insights and Highlights for Developers - SwiftUI News
SwiftUI Tips and Tricks: Coding Review of Apple´s Scrumdinger Project
Переглядів 3,3 тис.Рік тому
SwiftUI Tips and Tricks: Coding Review of Apple´s Scrumdinger Project

КОМЕНТАРІ

  • @LebenWerden
    @LebenWerden День тому

    How I can make more than 10 columns?

  • @Michael-Martell
    @Michael-Martell День тому

    Why not use Swift Data?

  • @AnotherOneChannel404
    @AnotherOneChannel404 2 дні тому

    Now my life much more easier, thank

  • @framora7598
    @framora7598 5 днів тому

    I've been looking for a video like this, thanks! ❤

  • @ich0halt1
    @ich0halt1 6 днів тому

    It's very confusing to newbies when you change your code mid-video because you realize it's not working, and cut some of the changes from the video ..

  • @ud1t665
    @ud1t665 7 днів тому

    Is there any way to export the xloc in a non-mac friendly way?

  • @michelandersonlutzteixeira4366
    @michelandersonlutzteixeira4366 8 днів тому

    Great video. I'm using it as a basis for an application I'm developing, but I need to include sections or groups, for example a table where I can separate by month sections.

  • @hellokittythecook5053
    @hellokittythecook5053 8 днів тому

    (2:14)

  • @LinuxH2O
    @LinuxH2O 8 днів тому

    Really informative, something I kind of was in need. Thanks for showing things off.

  • @Johnsmith-mu4ux
    @Johnsmith-mu4ux 8 днів тому

    Karin, can you please use dark theme for xcode when recording if possible, Thank you!

  • @in60
    @in60 10 днів тому

    Danke! Tolles Video!

  • @farisarie8584
    @farisarie8584 10 днів тому

    Could u revised the english translation bcs sometimes the translation little bit ambiguous, thankyou

  • @RahulShivhare-t1v
    @RahulShivhare-t1v 13 днів тому

    Is this only works on SwiftUI?

  • @aleksejsigaj1373
    @aleksejsigaj1373 15 днів тому

    Danke! :)

  • @KD-SRE
    @KD-SRE 16 днів тому

    I use '/bye' to exit out of the Ollama cli

  • @KD-SRE
    @KD-SRE 16 днів тому

    Great series! Thank you so much.

  • @kamilsuleymanov7197
    @kamilsuleymanov7197 18 днів тому

    We can add conformation to Identifiable protocol to Color by adding id property in extension

  • @mr.random8447
    @mr.random8447 19 днів тому

    Hardcoding fontSize, doesn't scale automatically when users change to larger text. How can I overcome this.

  • @paschalkings8184
    @paschalkings8184 20 днів тому

    you are the best

  • @stelluspereira
    @stelluspereira 20 днів тому

    Excellent content, THANKYOU Mam

  • @balabuyew
    @balabuyew 22 дні тому

    1) Cannot find any information of how to scroll a Table using scrollPosition modifier both horizontally and vertically at the same time. Suppose I want to ensure that the 15-th column cell of 10-th row is shown on the screen. It seems that ScrollPosition structure does not provide any proper API. 2) Also, it's interesting how the system fills ScrollPosition structure after scrolling via mouse or gesture. When the top item is shown only partially, for example.

  • @OpiumSmoke8971
    @OpiumSmoke8971 25 днів тому

    I have been up nights with garbage AI and this woman helped in an hour im talking many countless great projects that failed omg. Thank you so. much I dont trust machines esp AI their code is trash. I love how you did the nav split view or nav stack well I never understood I was good at c++ and not objc and swift mostly all cli mips lua guys I legit wasted nights so frustrated my mac probably wanted to cry .. You really have to just know and can't copy paste. Thanks again

  • @aleksandrkravtsov8727
    @aleksandrkravtsov8727 26 днів тому

    perfect explanation

  •  27 днів тому

    Awesome video! Vielen Dank 🙏

  • @AndyJMacLeod
    @AndyJMacLeod 28 днів тому

    I'm struggling to figure-out the best option for navigation when I have a mixture of non-value and value based navigation... and there's no tutorials on it. For example, to get to my main settings screen I use traditional destination based navigation links. But deeper in, I'm using value based navigation. It turns-out you cannot used the "dismiss" action with the isPresented navigationDestinations... and everything just becomes more messy that it needed to be.

  • @charliecho5392
    @charliecho5392 29 днів тому

    47:50 "That's what they do with flashcards," haha, that was hilarious.

  • @leynercastillo
    @leynercastillo 29 днів тому

    Your content was the only that it helps me to fix my issue with my TabView without using UIKit components. Thanks

  • @LyricsVideo4U
    @LyricsVideo4U Місяць тому

    01:14 Great stuff, keep it up

  • @sonnyramen
    @sonnyramen Місяць тому

    Anyone knows Why can’t I see the subtitles? ? ?

  • @khermawan
    @khermawan Місяць тому

    Ollamac and OllamaKit creator here! 👋🏼 Great video, Karin!! ❤

  • @kimsanov
    @kimsanov Місяць тому

    The best Charts tutorial ever! Thank you!

  • @byaruhaf
    @byaruhaf Місяць тому

    Hi Karin, have your views on Swift Combine changed in 2024? Do you think it's still worth investing time to learn Combine?

  • @dranoel8177
    @dranoel8177 Місяць тому

    Your mouth noises are so annoying but your video is great. Please fix this for later and thanks a lot for the help, you made my day !

  • @kimsanov
    @kimsanov Місяць тому

    Thanks for great video! At 01:03:49 dividing by count could crash if sales on real data will be 0. I usually use guard count ≠ 0 else return {0.0} in average functions. And grouping in dict could be also implemented via Dictionary(groupBy:) initializer

  • @sownhere
    @sownhere Місяць тому

    Hi Karin, what are u thinking about if i do it by swift, It harder than swiftUI, isn't it. can u give me sowe advice. Thank you so much. Hope you see and answer me soon.

  • @marceljaeger
    @marceljaeger Місяць тому

    There can't be enough "cat".🤩😂

  • @ekarademirr
    @ekarademirr Місяць тому

    Thank you 😍

  • @ananda7086
    @ananda7086 Місяць тому

    Could we have multiple navigation stacks in a SwiftUI app? Let's say I have a login flow, onboarding flow, and the main app flow. Could I use a navigation stack in the root view of each flow or just have one Navigation stack enum that covers all the flow in the app.

  • @andrelabbe5050
    @andrelabbe5050 Місяць тому

    I enjoyed the video. Easy to understand and most importantly showing what you can do without to much hassle with a not too powerful MacBook. From the video I believe I have the same model as the one you used. I do like the idea of setting preset for the 'engine'. I do use the Copilot Apps. I can then check how both perform for the same question. I have just tested deepseek-coder-v2 with the same questions as you... Funny thing, it is not exactly the same answer. Also on my 16Gb Mac,,, The Memory activity get a nice yellow colour. Sadly contrary to the Mac in the video, I got more stuff running in the background like Dropbox, etc... Which I cannot really kill just for the sake of it,

  • @mindrivers
    @mindrivers Місяць тому

    Dear Karin, Could you please advise on how to put my entire Xcode project into a context window and ask the model about my entire codebase?

  • @bobgodwinx
    @bobgodwinx Місяць тому

    LLMs have a long way to go. 4GB to run a simple question is a no go. The have to reduce it to 20MB and people will start paying attention.

  • @millie6781
    @millie6781 Місяць тому

    Thank you so much it is very helpful☺

  • @juliocuesta
    @juliocuesta Місяць тому

    if i understood correctly. The idea could be to create an app for macOS that includes some function that requires a LLM. The app is distributed without the LLM. The user is notified that said function will only be available if download the model. This message should be implemented in a View that contains a button that will download the file and configure the macOS app to start its use.

  • @midnightcoder
    @midnightcoder Місяць тому

    Any way of running it on iOS?

    • @EsquireR
      @EsquireR Місяць тому

      Only watchos sorry

  • @guitaripod
    @guitaripod Місяць тому

    wondering what it'd take to get something running on iOS. Even with 2B it might prove useful

  • @officialcreatisoft
    @officialcreatisoft Місяць тому

    I've tried using the LLM's locally, but I only have 8gb of ram. Great video!

    • @SwiftyPlace
      @SwiftyPlace Місяць тому

      Unfortunately, Apple made the base models with 8GB. A lot of people have the same problem as you.

    • @jayadky5983
      @jayadky5983 Місяць тому

      I feel like you can still run the Phi3 model on your device.

  • @Another0neTime
    @Another0neTime Місяць тому

    Thank you for the video, and sharing your knowledge.

  • @kamertonaudiophileplayer847
    @kamertonaudiophileplayer847 Місяць тому

    The awesome video!

  • @ericwilliams4554
    @ericwilliams4554 Місяць тому

    Great video. Thank you. I am interested to know if any developers are using this in their iOS apps.

    • @SwiftyPlace
      @SwiftyPlace Місяць тому

      This is not working for iOS. If you want to run LLM on an iPhone you will need to use a smaller model which usually dont perform so well. Most iPhones have less than 8GB Ram. That is also why Apple Intelligence will process more advanced complex task in the cloud

  • @tsalVlog
    @tsalVlog Місяць тому

    Great video!