Sapling Logo

AI Content Detection in Swift / iOS

Swift / iOS

Swift is a compiled programming language developed by Apple as a replacement for Objective-C. It is used with Cocoa and Cocoa Touch frameworks for application development for iOS and macOS platforms.

Sapling: AI Generated Content Detector

How do you distinguish or determine between text written by a human and text written by Large Language Model generative AIs? With Sapling, you can integrate AI Content Detection to an existing Swift / iOS application. You can also add grammar, spell checking, and other text AI functionality.

This page demonstrates a quick way to integrate AI writing and AI text checking functionality into a Swift / iOS application using Sapling's API. If you are not looking for a Swift / iOS guide, click here for guides for other programming languages.

Sapling does not currently maintain a Swift / iOS-specific SDK, but you can access the Sapling AI Detection HTTP API using any programming language that supports HTTP POST requests. An example of an AI text detector is shown below.

Setup Steps

Distinguish human text from AI text using Swift / iOS:

Swift / iOS Grammar Check Quickstart

import Foundation
#if canImport(FoundationNetworking)
  import FoundationNetworking
#endif

let json: [String: Any] = [
    "key": "<API_KEY>",
    "text": "I am an artificial intelligence system designed to help people solve complex problems. My capabilities include natural language processing, machine learning, and predictive analytics."
]

let jsonData = try JSONSerialization.data(withJSONObject: json)

let url = URL(string: "https://api.sapling.ai/api/v1/aidetect")!
var request = URLRequest(url: url)
request.httpMethod = "POST"
request.setValue("\(String(describing: `jsonData`.count))", forHTTPHeaderField: "Content-Length")
request.setValue("application/json", forHTTPHeaderField: "Content-Type")
request.httpBody = jsonData

let task = URLSession.shared.dataTask(with: request) { (data, response, error) in
    print("URLSession dataTask")
    guard let data = data, error == nil else {
      print("No data")
      return;
    }
    let responseJSON = try? JSONSerialization.jsonObject(with: data, options: [])
    if let responseJSON = responseJSON as? [String: Any] {
        print(responseJSON)
    }
}
task.resume()

Returned result:

{
  "score":0.9989707556330055,
  "sentence_scores":[
    {
      "score":0.9764397893790885,
      "sentence": "I am an artificial intelligence system designed to help people solve complex problems."
    },
    {
      "score":0.9923806397189778,
      "sentence":"My capabilities include natural language processing, machine learning, and predictive analytics."
    }
  ],
  "text":"I am an artificial intelligence system designed to help people solve complex problems. My capabilities include natural language processing, machine learning, and predictive analytics."
}

Documentation

Addtional parameters and Sapling's full API documentation can be accessed here: https://sapling.ai/docs/api/detector