Skip to content

imitoy/luapython

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

49 Commits
 
 
 
 
 
 
 
 

Repository files navigation

luapython

Library of manipulating Python in Lua.

This project is under development...

Create an issue if any bug occurred.

This project is only supported on Linux temporarily.

Quick start

  1. Install Lua and Python. (Latest Lua version recommended)

  2. Build & install this project.

git clone https://github.com/imitoy/luapython.git
cd luapython
sudo make install # require python headers
# when uninstall, replace 'install' with 'uninstall
  1. Import this library and load with python version in Lua.
luapython=require "luapython"
luapython.load("3.14")
  1. Import python modules in Lua.
numpy=luapython.import"numpy" -- Make sure numpy is installed
print(numpy.array({1,2,3}))

math=luapython.import"math"
print(math.tan(90))
  1. Create Python structure by using dict, set, list, tuple.
json=luapython.import"json"
local data = luapython.dict{name="Alice", age=18}
print(json.dumps(data))
  1. Create a table to adapt keywords parameters.
local OpenAI = luapython.import"openai.OpenAI"
local client = OpenAI({api_key="<DeepSeek API Key>", base_url="https://api.deepseek.com"})

local response = client.chat.completions.create({
    model="deepseek-chat",
    messages={
        {role = "system", content = "You are a helpful assistant"},
        {role = "user", content = "Hello"},
    },
    stream=false
})

print(response.choices[0].message.content)
  1. Append () to the Python Iter Object.
local response = client.chat.completions.create({
    model="deepseek-chat",
    messages={
        {role = "system", content = "You are a helpful assistant"},
        {role = "user", content = "Hello"},
    },
    stream=true
})

for chunk in response() do
    io.write(chunk.choices[0].delta.content)
    io.flush()
end

TODO

  • Support for Python version above 3.8
  • Integrate Python error in Lua
  • Conda support

About

Library of using Python in Lua.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published